map、foreach、forの使い方の違い
6099 ワード
array.forEach(calback[,thisObject]);
以下はパラメータの詳細です.
1、calback:関数テスト配列の各要素.
2、thisObject:対象はこのリマインド実行時に使用します.
forEachはECMA 5におけるArayの新しい方法の中で最も基本的な一つで、巡回、循環です.
ArayはES 5に追加された方法では、パラメータはすべてFnctionタイプであり、デフォルトでは、プログレッシブ、forEach方法のfunctionコールバックは3つのパラメータをサポートし、1つ目はエルゴード配列内容である.2番目は対応する配列インデックスで、3番目は配列そのものです.
利点:foreachとmapはforに対して同じ機能を実現しますが、書き込みが便利で、コード量が節約できます.
forEachは通常のforサイクルに比べて、洗面配列の処理、または配列の空席をスキップすることが利点です.
forループ:
以下はパラメータの詳細です.
1、calback:関数テスト配列の各要素.
2、thisObject:対象はこのリマインド実行時に使用します.
forEachはECMA 5におけるArayの新しい方法の中で最も基本的な一つで、巡回、循環です.
ArayはES 5に追加された方法では、パラメータはすべてFnctionタイプであり、デフォルトでは、プログレッシブ、forEach方法のfunctionコールバックは3つのパラメータをサポートし、1つ目はエルゴード配列内容である.2番目は対応する配列インデックスで、3番目は配列そのものです.
[].forEach(
function
(value, index, array) {
// ...
});
$.each([],
function
(index, value, array) {
// ...
});
ここのmapは「地図」の意味ではなく、「マップ」の意味です.[].map();基本的な使い方はforEachの方法と似ています.array.map(callback,[ thisObject]);
[].map(
function
(value, index, array) {
// ...
});
map方法の役割は理解に難くないです.「マッピング」というのは、元の配列が「マッピング」されて新しい配列に対応しています.var
data=[1,3,4]
var
Squares=data.map(
function
(val,index,arr){
console.log(arr[index]==val);
// ==> true
return
val*val
})
console.log(Squares);
// ==> [1, 9, 16]
注意:forEach、mapはいずれもECMA 5の新規配列の方法ですので、ie 9以下のブラウザはまだサポートしていません.利点:foreachとmapはforに対して同じ機能を実現しますが、書き込みが便利で、コード量が節約できます.
forEachは通常のforサイクルに比べて、洗面配列の処理、または配列の空席をスキップすることが利点です.
forループ:
var arr = new Array(1000); arr[0] = 1; arr[99] = 3; arr[999] = 5; // for for (var i = 0, l = arr.length; i < l; i++) { console.log('arr[%s]', i, arr[i]); } console.log('i :' , i); // ... // arr[0] 1 // ... // arr[99] 3 // ... // arr[999] 5 // i : 1000 // for - in var count = 0; for(var j in arr){ count ++ ; if(arr.hasOwnProperty(j)){ console.log('arr[%s]', j, arr[j]); } } console.log('count : ', count); // arr[0] 1 // arr[99] 3 // arr[999] 5 // i : 1000
forEach :
var arr = new Array(1000); arr[0] = 1; arr[99] = 3; arr[999] = 5; var count = 0; arr.forEach(function(value, index) { count++; console.log(typeof index); console.log(index, value); }); console.log('count', count); // number // 0 1 // number // 99 3 // number // 999 5 // count 3
Array Javascript , Array 。
, Javascript “array” , Javascript Array 。 , Javascript Array , , Array 。
, Array Number , String 。 arr[0] Number 0 String "0" 。
, Javascript Array , "0" 、 "1" 。 , Array length , 。
Array length ? for-in “ ”, length , , Array 。
map ,forEach ,
for , break , , for...in,foo...of,for(let i=0;iforEach for(let i=0;imap , , forEach
forEach Array , IE , prototype