未定義について最初に話しましょう:
JavaScriptの変数は弱いタイプであるため、変数を宣言する場合は、VARキーワードを使用するだけです。 Cのような強く型付けされた言語である場合、変数を宣言するときに初期値が指定されていない場合、int変数のデフォルト値などのデフォルト値が与えられます。
var v1;
それは彼に虚偽または0を与えているのですか、それとも ''?
タイプがないため、決定することは不可能です。 JavaScriptでは、寿命後の初期値がないこの変数については、未定義を与えます。ただし、前提は、この変数を宣言する必要があり、識別子に対して宣言されていない場合、エラーが発生することです。以下のコードをご覧ください。
vo = "vo"; // varキーワードを使用せずにグローバル変数を作成します。値を割り当てない場合、エラーが報告されます。以下に示すように
// v1; //エラーがあります
var v2; // undeifned
var v3 = ""; // null
アラート(vo);
// alert(v1); //
アラート(V2);
アラート(V3);
ヌルについて話しましょう:
JavaScriptには、いくつかの基本的なタイプ、数字、文字列、ブール値、およびオブジェクトがあります。オブジェクトタイプの変数には2つの状況があります。 1つは、オブジェクトのインスタンスであり、もう1つは空の参照nullであるということです。 Javaのようなオブジェクト指向の言語に精通している友人は、簡単に理解する必要があります。どちらの場合も、それらのタイプはオブジェクトです。 JavaScriptの変数がそれらに割り当てられている場合にのみ
以下のように、そのタイプを決定します。
コードは次のとおりです。
var v1 = 1; var v2 = true;アラート(typeof v1); // number alert(typeof v2); // boolean v2 = new date();アラート(typeof v2); //オブジェクトv2 = "str";アラート(typeof v2); //文字列v2 = null;アラート(typeof v2); //物体
ご覧のとおり、NullはJavaScriptの特別なオブジェクトタイプ値を表します。これは、NULL参照の概念を表すために使用されます。識別子がオブジェクトタイプとして宣言されているが、当面のインスタンスが与えられていない場合、後で使用するためにnullとして初期化できます。
必ずしも絶対に正しいとは限りません。簡単に言えば、すべての変数に対して、宣言後に初期値が指定されていない限り、未定義です。オブジェクトタイプを使用してnull参照の概念を表す場合、nullで表されます。
ここにいくつかの追加があります:
null:価値がないことを意味します。
未定義:宣言されていない変数、または宣言されたが割り当てられていない変数、または存在しないオブジェクトプロパティを示します。 ==演算子は、2つを等しく扱います。 2つを区別したい場合は、===またはTypeof演算子を使用します。両方ともif(!object){}に含まれています。