给自己总结一下,循环比较多容易弄混了。
forEach
Array.forEach(callback)
callback参数(value,index,array)
没有返回值,对数组的所有元素执行一遍callback
for of
for (variable of iterable) {
statement
}
没有返回值,对可循环的对象(包括Array,Map,Set,String,arguments)执行statement
map
数组的map函数返回一个新的数组
arr.map(callback[, thisArg])
callback有三个参数 (value, index ,array)
every
数组的every函数测试是否所有的元素都能通过provided function的测试
arr.every(callback[, thisArg])
callback参数 (value index array)
thisArg
Optional. Value to use as this when executing callback.
function isBigEnough(element, index, array) {
return element >= 10;
}
[12, 5, 8, 130, 44].every(isBigEnough); // false
[12, 54, 18, 130, 44].every(isBigEnough); // true
返回值是boolean
数组推导(array comprehension)
var a1 = [1, 2, 3, 4];
var a2 = [for (i of a1) i * 2];
a2 // [2, 4, 6, 8]
允许直接通过现有数组生成新数组。