代码改变世界

数组的循环和迭代

2017-07-30 16:02  囍呆  阅读(227)  评论(0编辑  收藏  举报
循环 (1) for 循环 for 循环是遍历数组最简单的一种,也是使用频率最高的一种。 普通版 for 循环 var = ["a", "b", "c", "d"]; for ( let = 0; < . ; ++ ) { console.log( [ ] ); // a b c d } 优化版 for 循环 var = ["a", "b", "c", "d"]; for ( let = 0, = . ; < ; ++ ) { console.log( [ ] ); // a b c d } (2)for-in 循环 var = ["a", "b", "c", "d"]; for ( let in ) { console.log( [ ] ); // a b c d } (3)for-of 循环 var = ["a", "b", "c", "d"]; for ( let of ) { console.log( ); // a b c d } for-in 是遍历集合对象的键名, for-of 是直接遍历集合对象的键值。 for-of 的遍历方式性能要高于 for-in ,但仍比不不上普通的 for 循环。 for-of 不仅支持数组的遍历,还支持大多数类数组对象。同时也支持 ES6 里新增的 Map 和 Set 对象。 数组迭代 (1)forEach() var = [10, 11, 12, 13, 14]; arr.forEach(function( , ) { console.log( ); // 10 11 12 13 14 console.log( ); // 0 1 2 3 4 }) (2)map() var = [10, 11, 12, 13, 14]; var = .map(function( , ) { return * 2; }) console.log( ); (3)filter() var = [10, 11, 12, 13, 14]; var = .filter(function( , ) { return % 2 == 0; }) console.log( ); (4)reduce() var = [10, 11, 12, 13, 14]; var = .reduce(function( , ) { return + ; }) console.log( ); (5)every() var = [10, 11, 12, 13, 14]; var = .every(function( , ) { return % 2 == 0; }) console.log( ); (6)some() var = [10, 11, 12, 13, 14]; var = .some(function( , ) { return % 2 == 0; }) console.log( );