JavaScript で、オブジェクトの配列が「配列」ではなく「オブジェクト」を返すのはなぜですか?
配列は、さまざまな用途に使用できるデータ構造です。 JavaScript。オブジェクトを含むあらゆるデータ型を保存できます。ただし、オブジェクトの配列を処理するときに興味深い現象が発生します。
次の例を考えてみましょう。
$.ajax({ url: 'http://api.twitter.com/1/statuses/user_timeline.json', data: { screen_name: 'mick__romney'}, dataType: 'jsonp', success: function(data) { console.dir(data); //Array[20] alert(typeof data); //Object } });
Twitter タイムライン オブジェクトの配列であるにもかかわらず、typeof 演算子は驚くべきことに「Object. 」この一見一貫性のない動作は、JavaScript の型システムの特殊性に起因します。
型の異常について:
JavaScript では、typeof 演算子がオブジェクトの内部クラスをチェックします。特に、配列は他の多くのプログラミング言語とは異なり、別個の型とはみなされません。代わりに、それらは「オブジェクト」として分類されます。これは、配列が Object.prototype から継承され、オブジェクトのサブクラスになるためです。
配列かどうかを確認する別の方法:
変数が次のことを表しているかどうかを確認するにはJavaScript の配列では、いくつかのメソッドを使用できます。
jQuery の互換性について:
結論:
オブジェクトの配列は、従来の観点から見ると直感に反するように見えるかもしれませんが、JavaScript の独自の型システムの直接の結果です。これらのニュアンスを理解することで、JavaScript アプリケーションで配列を効果的に処理および操作できるようになります。
以上がJavaScript で「typeof」演算子がオブジェクトの配列に対して「Object」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。