;
javascript null および未定義< /title>
/**
******************null キーワード************************
JavaScript キーワード null は、「値なし」を意味する特別な値です。 Null は、オブジェクト型の特別な値、つまり「オブジェクトがない」ことを表す値とみなされます。
null は、他のすべての値とは異なる一意の値です。変数の値が null の場合、その値が有効なオブジェクト、配列、数値、文字列
、およびブール値ではないことを意味します。
null がブール環境で使用される場合は、自動的に false に変換され、数値環境で使用される場合は、自動的に数値 0 に変換されます。文字列環境で使用される場合は、
自動的に「null」に変換されます。
*/
= null ;
//ブール環境の場合
if($null){
document.write("ブール環境で null が使用される場合、変換は実行されません"); 🎜>document .write("Boolean 環境で null を使用すると、自動的に false に変換されます");//この文が出力されます
}
//数値環境で使用されます
if (0 $null = = 0){
document.write("
数値環境でnullを使用した場合、自動的に0に変換されます");//この文が出力されます
}else{
Document.write("
数値環境で null が使用される場合、変換は実行されません")
}
//文字列環境で使用されます
document.write("
文字列環境の場合: "$null);//null
//null の型: object
document.write("
データ$null の型は: " typeof $null);//object
/**
***********************未定義*******************
未定義は特別な値。JavaScript のキーワードではありません。次の状況に注意する必要があります。
1. 宣言されているが値が割り当てられていない変数を使用する場合
2. 存在しないオブジェクト属性を使用する場合
上記 2 つの場合、返される値は「この値は未定義です」です。未定義の値は null とは異なります。
未定義の値がブール環境で使用されると、自動的に false に変換されます。
数値環境で使用されると、自動的に NaN に変換されます。 NaN : NaN 属性は、数値以外の値を表す特別な値です。この属性は、値が数値ではないことを示すために使用されます。
文字列コンテキストで使用されると、自動的に " に変換されます。未定義";
*/
var $aaa;//宣言されていますが、初期化されていません。
var $bbb = "Test";//宣言され初期化されます。
var $obj = new Object();
document.write("
$aaa のタイプ: " typeof $aaa ", $aaa の値: " $aaa);//未定義 , 未定義
document.write("
$bbb の種類: " typeof $bbb ", $bbb の値: " $bbb);//文字列、テスト
document.write(" < br/>$obj の存在しないプロパティ myProp のタイプ: " typeof $obj.myProp "、$obj.myProp の値: " $obj.myProp);//未定義、未定義
// document.write("
宣言されていない変数の値を出力します: " $abc);//実行エラー
/**
未定義と null の関係
未定義と null 値は異なりますが、== 演算子はそれらを等しいものとして扱います。
var obj = new Objec();
obj.prop == null //return true
undefiend と null を厳密に区別したい場合は、==== 演算子または typeof を使用する必要があります。
var obj = new Objec();
obj.prop === null // false を返す
typeof obj.prop // 出力は未定義
typeof null // 出力オブジェクト
*/