Quando usar o operador double not (!!) em JavaScript

Compreendoo que o operador double not faz em JavaScript. Estou curioso sobre o seu uso e se uma afirmação recente que eu fiz está correta.

eu disse issoif (!!someVar) nunca é significativo nem é(!!someVar && ... porque ambos osif e a&& fará com que someVar seja avaliado como booleano, então o !! é supérfluo.

De fato, a única vez em que pude pensar que seria legítimo usar o operador double not é se você quisesse fazer uma comparação estrita com outro valor booleano (talvez um valor de retorno que espere explicitamente verdadeiro ou falso).

Isso está correto? Comecei a duvidar de mim mesmo quando notei que o jQuery 1.3.2 usava ambosif (!!someVar) ereturn !!someVar && ...

O duplo não tem nenhum efeito real nessas situações?

Minha opinião pessoal é que isso apenas leva à confusão. Se eu vir uma instrução if, sei que ela está sendo avaliada como booleana.

questionAnswers(2)

yourAnswerToTheQuestion