ホームページ > ウェブフロントエンド > jsチュートリアル > javascript_javascript スキルの for in と for each in の違いについての簡単な説明

javascript_javascript スキルの for in と for each in の違いについての簡単な説明

WBOY
リリース: 2016-05-16 16:02:34
オリジナル
1044 人が閲覧しました

違い 1:

in の

は JavaScript 1.0 でリリースされました。
For each は、E4X 標準の一部として JavaScript 1.6 でリリースされましたが、ECMAScript 標準の一部ではありません。
これは、さまざまなブラウザとの互換性の問題があることを意味します。これは多くのブラウザではサポートされていません。たとえば、IE6、IE7、IE8 およびその他のブラウザはサポートされていません。

違い 2:

例: var Rectangle = { 高さ: "15"、幅: "25" };

  for (var i in 长方形){
    alert( i + "," + 长方形[i] );
  }
ログイン後にコピー

結果は次のようになります: 高さ、15;

  for each (var i in 长方形){
    alert( i + "," + 长方形[i] );
  }
ログイン後にコピー

結果は次のとおりです: 15、未定義;

2 つのトラバーサル メソッドの変数 i の値はそれぞれ異なります。オブジェクトの属性名は取得できませんが、属性値のみを取得できます。

最後に、使用上の提案をまとめます:

(1) 通常の配列を走査するには、for in と for each in の両方にブラウザの互換性の問題があり、順序を保証できないため、便宜上、ネイティブの走査メソッドを使用することをお勧めします。配列を走査します (シーケンスが要件がない場合は、for in を使用できますが、お勧めしません)。興味がある場合は、次の記事「欠陥の簡単な分析」を参照してください。 js の for in の。

(2) オブジェクトのトラバース。for では理想的なトラバースが提供できないため、他の方法を選択するしかありません。上で説明した違いから、for in はインデックスと属性値を取得できるのに対し、for each は属性値しか取得できないため、for in を使用することをお勧めします。多くの以前のバージョンのブラウザはサポートされていません。

上記がこの記事の全内容です。皆さんに気に入っていただければ幸いです

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート