Wann sollte der double not (!!) Operator in JavaScript verwendet werden?

Verstehe ich was die Doppel-operator in JavaScript. Ich bin neugierig, es zu verwenden, obwohl, und ob oder nicht eine aktuelle Behauptung, die ich gemacht habe richtig ist.

Ich sagte, dass if (!!someVar) ist nie sinnvoll, noch ist (!!someVar && ... da sowohl die if und die && verursachen someVar bewertet werden als eine Boolesche so !! ist überflüssig.

In der Tat, das einzige mal, dass ich denken konnte, es wäre legitim, verwenden Sie das double nicht Betreiber ist, wenn Sie wollte einen strikten Vergleich zu anderen booleschen Wert (also vielleicht in der Rückgabewert, erwartet true oder false explizit).

Ist das richtig? Ich begann zu zweifeln, als ich merkte, jQuery 1.3.2 eingesetzt, sowohl if (!!someVar) und return !!someVar && ...

Macht die Doppel nicht eine tatsächliche Wirkung in diesen Situationen?

Meine persönliche Meinung ist, dass es führt nur zu Verwirrung. Wenn ich sehe, wie eine if-Anweisung, ich weiß, es ist bewerten ihn als boolean.

InformationsquelleAutor der Frage Keith Bentrup | 2010-02-01

Schreibe einen Kommentar