ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript オブジェクトの型名を取得するにはどうすればよいですか?
オブジェクトの型の名前を取得する
JavaScript には、オブジェクトの型を取得する Java の class.getName() メソッドに直接相当するメソッドはありません。オブジェクトのタイプの名前。ただし、この目的にはさまざまなアプローチを使用できます。
コンストラクター プロパティの使用
オブジェクトのコンストラクター プロパティは、そのコンストラクター関数を参照します。ほとんどのオブジェクトでは、コンストラクター プロパティは、オブジェクトの作成に使用されるコンストラクター関数を指します。
var myArray = [1, 2, 3]; myArray.constructor == Array; // true
ただし、このメソッドには次の制限があります。
Instanceof 演算子の使用
instanceof 演算子は、オブジェクトが特定のコンストラクター関数のインスタンスであるかどうかを確認します。
myArray instanceof Array; // true myArray instanceof Object; // true
このメソッドには次の機能もあります制限事項:
コンストラクタープロパティの Name プロパティの使用
開始IE9 では、オブジェクトのconstructor.name プロパティを使用してコンストラクター関数の名前を取得できます。
myArray.constructor.name; // "Array"
ただし、このメソッドは Internet Explorer の以前のバージョンでは信頼できません。
Object.prototype.toString の使用
Object.prototype.toString メソッドは、オブジェクトの型の文字列表現を返します。
Object.prototype.toString.call('abc'); // "[object String]" Object.prototype.toString.call(/abc/); // "[object RegExp]" Object.prototype.toString.call([1, 2, 3]); // "[object Array]"
このメソッドは、すべての組み込み型の型名を取得するために使用できます。ただし、すべてのユーザー定義型に対しては「Object」が返されます。
注意
オブジェクトの型は、その方法によって変わる可能性があることに注意することが重要です。構築されています。たとえば、関数が匿名で定義されている場合、そのコンストラクター プロパティは Anonymous に割り当てられます。
以上がJavaScript オブジェクトの型名を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。