标签:index ever bsp 对象 nbsp 语句 str strong 循环
JavaScript数组的循环和迭代
循环
for循环
普通版for循环
var arr = ["a","b","c","d"]; for (let i = 0; i < arr.length; i++){ console.log(arr[i]); .//a b c d }
优化版for循环
var arr = ["a","b","c","d"]; for (let i = 0; len = arr.length;i < len; i++){ console.log(arr[i]); .//a b c d }
for in 循环
var arr = ["a","b","c","d"]; for (let i in arr ){ console.log(arr[i]); .//a b c d }
for of 循环
var arr = ["a","b","c","d"]; for (let item of arr){ console.log(item); .//a b c d }
说明
数组迭代
forEach()
描述:按顺序让数组中每一项依次执行某种相同的操作。
var arr = [10, 11, 12,13, 14]; arr.forEach(function(item, index){ console.log( item); //10 11 12 13 14 console.log( index); //0 1 2 3 4 })
说明:
forEach 不能使用 continue 和 break 语句句中断循环,也不能使用 return 语句句返回到外层函 数。
map()
描述:按顺序让数组中每一项依次执行某种相同的操作,然后返回一个新数组
var arr = [10, 11, 12,13, 14]; var newArr = arr.map(function(item, index){ return item * 2; }) console.log( newArr); //[20, 22, 24, 26,28]
filter()
描述:按顺序让数组中每一项依次执行某种相同的操作,然后筛选出符合条件的元素,组成新数组并返回。
var arr = [10, 11, 12,13, 14]; var newArr = arr.filter(function(item, index){ return item % 2 == 0; }) console.log( newArr); //[10, 12, 14]
feduce()
描述:按顺序让数组中的前项和后项做某种计算,并累计返回最终值。
var arr = [10, 11, 12,13, 14]; var result = arr.reduce(function(prev, next){ return prev + next; }) console.log( result); // 60
every()
描述:按顺序让数组中每一项依次执行某种相同的操作,用来检测数组中每一项是否都符合条件。
var arr = [10, 11, 12,13, 14]; var result = arr.every(function(item, index){ return item % 2 == 0; }) console.log( result); // false
说明:检测的元素中,如果全部都满足条件,返回 true ,只要有一项不满足条件,则返回 false 。即 一假必假。
some()
描述:按顺序让数组中每一项依次执行某种相同的操作,用来检测数组中某一项是否都符合条件。
var arr = [10, 11, 12,13, 14]; var result = arr.some(function(item, index){ return item % 2 == 0; }) console.log( result); // true
说明:检测的元素中,只要有一项符合条件,就返回结果 true ,如果全部都不满足条件,则返回结 果 false 。即一真必真。
标签:index ever bsp 对象 nbsp 语句 str strong 循环
原文地址:http://www.cnblogs.com/amag/p/7258132.html