JavaScriptの中の「!!」はどういう意味ですか?
646 ワード
Document
alert(!!undefined)//false
alert(!!null)//false
alert(!!0)//false
alert(!!"")//fase
jsコードには「!」が使われることがありますが、これは逆と知っています.ブールタイプに対して、その値trueとfalseを交換します.それはブールタイプではないですか?ブールタイプではない場合、jsは先に値をブールタイプに変換してから反を取ります.
他の種類のブール型ルール:
文字列の種類の値は、空の値(")をfalseに変換し、残りはtrueに変換します.
数字のタイプは0をfalseに変換します.残りはtrueです.
null、undefinedはfalseに変換されます.
したがって、null、undefined、0、“”はflasheに転化されます.
ここで言えば、「!!」の意味が分かります.一つ!は、オブジェクトをブール型に変えて反対をとる2つです.は、反転したブール値を直接ブールタイプでない値をブールタイプに変換するのに相当します.