Wann soll der double not (!!) Operator in JavaScript verwendet werden?
ich versteheWas der double not Operator in JavaScript macht. Ich bin jedoch gespannt, ob es sinnvoll ist und ob eine kürzlich von mir gemachte Behauptung richtig ist oder nicht.
ich sagte, dassif (!!someVar)
ist nie sinnvoll noch ist(!!someVar && ...
weil sowohl dieif
und das&&
wird dazu führen, dass someVar als Boolean ausgewertet wird, also das !! ist überflüssig.
Tatsächlich ist das einzige Mal, an das ich denken könnte, dass es legitim wäre, den double not-Operator zu verwenden, wenn Sie einen strengen Vergleich mit einem anderen booleschen Wert durchführen möchten (also möglicherweise als Rückgabewert, der explizit true oder false erwartet).
Ist das richtig? Ich fing an, an mir selbst zu zweifeln, als ich bemerkte, dass jQuery 1.3.2 beide verwendeteif (!!someVar)
undreturn !!someVar && ...
Hat das Doppel in diesen Situationen keine wirkliche Wirkung?
Meine persönliche Meinung ist, dass es nur zu Verwirrung führt. Wenn ich eine if-Anweisung sehe, weiß ich, dass sie als Boolescher Wert ausgewertet wird.