ホームページ > 記事 > ウェブフロントエンド > typeofとinstanceofの違いは何ですか
typeof と instanceof の違いは次のとおりです: typeof の戻り値は変数のデータ型を記述するために使用される文字列であり、instanceof の戻り値はブール値であり、変数が属するかどうかを決定するために使用されます。オブジェクトのインスタンスに。
typeof とinstanceofの比較
同じ点:
typeof とinstanceof は、JavaScript で変数かどうかを判断するためによく使用されます。が空であるか、その型が何であるか。
(学習ビデオの推奨: javascript ビデオ チュートリアル)
相違点:
typeof:
1. 戻り値は 1 です。変数のデータ型を説明するために使用される文字列。
2. Typeof は通常、数値、ブール値、文字列、関数、オブジェクト、未定義の結果のみを返すことができます。
if (typeof a != "undefined") { console.log("ok"); } eles { console.log("not ok"); } //下面的代码是错误的 // if (a) //因为如果 a 不存在( 未声明) 则会出错。 // if (a) { // console.log("ok"); // } else { // console.log('cc'); // }
配列や Null などの特殊なオブジェクトに typeof を使用すると、常にオブジェクトが返されます。これは typeof の制限です。
instanceof:
1. 戻り値はブール値
2. Instanceof は、変数がオブジェクトのインスタンスに属しているかどうかを判断するために使用されます。
// var a = new Array(); // alert(a instanceof Array); // true // alert(a instanceof Object) // true //如上, 会返回 true, 同时 alert(a instanceof Object) 也会返回 true; // 这是因为 Array 是 object 的子类。 // alert(b instanceof Array) // b is not defined // function Test() {}; // var a = new test(); // alert(a instanceof test) // true
関連する推奨事項: js チュートリアル
以上がtypeofとinstanceofの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。