Когда использовать двойной оператор not (!!) в JavaScript

я понимаючто делает двойной оператор not в JavaScript, Мне любопытно, как оно используется, и правильно ли недавнее утверждение, которое я сделал.

я сказал чтоif (!!someVar) никогда не имеет смысла и не является(!!someVar && ... потому что обаif и&& приведет к тому, что someVar будет оцениваться как логическое значение, так что !! это лишнее.

Фактически, единственный раз, когда я мог подумать, что было бы законно использовать оператор double not, это если вы хотите сделать строгое сравнение с другим логическим значением (так что, возможно, в возвращаемом значении, которое явно ожидает истину или ложь).

Это правильно? Я начал сомневаться в себе, когда заметил, что jQuery 1.3.2 использовал обаif (!!someVar) а такжеreturn !!someVar && ...

Разве двойной не имеет никакого реального эффекта в этих ситуациях?

Мое личное мнение таково, что это просто приводит к путанице. Если я вижу выражение if, я знаю, что оно оценивает его как логическое значение.

Ответы на вопрос(2)

Ваш ответ на вопрос