ホームページ >ウェブフロントエンド >jsチュートリアル >jsを使用して配列かどうかを判断する方法
この記事は、jsによるデータ型の決定などの基礎知識を普及することを目的としています。 php には is_array() 関数があることは誰もが知っていますが、js にはありません。データ型が配列であるかどうかを判断する場合、通常は念のために判断するための関数を作成します。今日は、基本的なデータ型の判断方法をいくつか紹介しますので、皆さんのお役に立てれば幸いです。
typeof は、グローバル変数がページに定義されているかどうかを判断するためによく使用されます。次のように判断した場合:
//haorooms是全局变量if(haorooms!=undefined){}//js会报错,说"Uncaught ReferenceError: haorooms is not defined"
解決策は次のように書くことです:
if(typeof haorooms!=undefined){ }
typeof を使用した後は、エラーは発生しません!これは typeof の応用の 1 つです!
さらに、typeof はデータ型を決定することもできます!以下のように:
var haorooms="string"; console.log(haorooms); //stringvar haorooms=1; console.log(haorooms); //numbervar haorooms=false; console.log(haorooms); //booleanvar haorooms; console.log(typeof haorooms); //undfinedvar haorooms= null; console.log(typeof haorooms); //objectvar haorooms = document; console.log(typeof haorooms); //objectvar haorooms = []; console.log(haorooms); //objectvar haorooms = function(){}; console.log(typeof haorooms) //function 除了可以判断数据类型还可以判断function类型
明らかに、typeof の場合、最初の 4 つのタイプに加えて、null、object、および array はすべてのオブジェクト タイプを返します。
は、それが配列であるかどうかを判断するために使用できます。
var haorooms=[];console.log(haorooms instanceof Array) //返回true
constructor は、返されたオブジェクトに対応するコンストラクターです。
各種データ型を判定するメソッド:
console.log([].constructor == Array);console.log({}.constructor == Object);console.log("string".constructor == String);console.log((123).constructor == Number);console.log(true.constructor == Boolean);function employee(name,job,born){ this.name=name; this.job=job; this.born=born; }var haorooms=new employee("Bill Gates","Engineer",1985); console.log(haorooms.constructor); //输出function employee(name, jobtitle, born){this.name = name; this.jobtitle = job; this.born = born;}
haorooms.constructorを出力すると、constructorが返されたオブジェクトに対応するコンストラクターであることが分かります。
以上がjsを使用して配列かどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。