JavaScriptのtypeof、null、および未定義
typeof 演算子
typeof 演算子を使用して、変数のデータ型を検出できます。
typeof のオペランドは未定義であり、戻り値は "未定義" です。
オペランドは数値です。 typeof(x) = "number"
文字列 typeof(x) = "string"
ブール値 typeof(x ) = "boolean"
オブジェクト、配列、null typeof(x) = "object"
Function typeof(x) = "function"
typeof 演算子は、式文字列のデータ型を表すために使用される文字を返します。
可能な文字列は、「数値」、「文字列」、「ブール値」、「オブジェクト」、「関数」、「未定義」です。
例:
alert(typeof (123));//typeof(123) は "数値" を返します
alert(typeof ("123"));//typeof("123") は "文字列" を返します
typeof演算式のデータ型を表す文字列を返します。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <p id="demo"></p> <script> document.getElementById("demo").innerHTML = typeof "john" + "<br>" + typeof 3.14 + "<br>" + typeof false + "<br>" + typeof [1,2,3,4] + "<br>" + typeof {name:'john', age:34}; </script> </body> </html>
Null
Null 値タイプは、変数またはコンテンツに値がないことを意味します。たとえば、フォームのテキスト入力ボックスにコンテンツがない場合、JavaScript を使用してテキスト入力ボックス要素の値を取得しようとすると、結果は null になります。
null値かどうかの判定は、比較対象の内容をnullと比較するだけです:
if( x == null ) { ... }
Webシステムの動作の特性を考慮するとこの場合、変数を破棄しなくても、変数に null 値を代入することで変数の内容をクリアできます。
未定義
変数の作成後、変数に値が割り当てられていない場合、変数は未定義型になります。未定義型には特定の値が未定義であるため、変数または戻り結果が未定義型であるかどうかを判断するには、それを未定義と比較するだけです。
未定義と Null の違い
未定義型には、未定義の値が 1 つだけあります。宣言された変数が初期化されていない場合、変数のデフォルト値は未定義です。
Null 型にも値は 1 つだけあり、それは null です。 Null は、まだ存在しないオブジェクトを表すために使用され、関数が存在しないオブジェクトを返そうとすることを示すためによく使用されます。
未定義は、変数が宣言されていない、または宣言されていても値が割り当てられていない (初期化されていない) ことを意味します。 関数が何も返さない場合、仮パラメーター変数の値は未定義です。関数のデフォルトは未定義を返します。
null は「値なし」を意味します。
JavaScript は、割り当てられていない変数のデフォルト値を未定義に設定します。これは、プログラマが var で宣言された変数に値がないことを示すために使用されます。はオブジェクトです。;
それらはすべて基本型です;
それらはすべてfalsyです (Boolean(unknown) ->// false, Boolean(null) ->// false);
次のような変数を判断できます。これは未定義であるかどうか。 typeof variable === "unknown";
この方法で、変数が null かどうかを判断できます。変数 === null;
2 つの等号は比較すると等しくなります (null==unknown ->// true)が、3 つの等号は比較すると等しくありません (null===unknown->// false) ;
えー