!!〜(チルド/バンバンチルドではない)は、「contains / included」配列メソッド呼び出しの結果をどのように変更しますか?
ここのjQuery inArrayページのコメントを読むと、興味深い宣言があります。 !!~jQuery.inArray(elm, arr) 今、私は二重感嘆符が結果をtype booleanに、の値で変換すると信じていますtrue。私が理解していないのは~、これらすべての中でチルダ()演算子がどのように使用されているのですか? var arr = ["one", "two", "three"]; if (jQuery.inArray("one", arr) > -1) { alert("Found"); } ifステートメントのリファクタリング: if (!!~jQuery.inArray("one", arr)) { alert("Found"); } 壊す: jQuery.inArray("one", arr) // 0 ~jQuery.inArray("one", arr) // -1 (why?) !~jQuery.inArray("one", arr) // false !!~jQuery.inArray("one", arr) // true また、チルダを前に置くと結果がになることにも気付きました-2。 ~!!~jQuery.inArray("one", arr) // -2 …