循环遍历总结(for/foreach/forin/forof/map/some/filter)
2017-10-27 16:52
736 查看
for-of 循环
代码示例for (var value of myArray) { console.log(value); }
循环的对象需为一个数组
无法记录索引
可以相应break、continue、return语句
可用来遍历对象属性
可用来遍历对象的自值
无法获取到对象或数组遍历的索引
for 循环
最基础的循环,循环内部可用到循环索引- 代码示例
for (var index = 0; index < myArray.length; index++) { console.log(myArray[index]); }
foreach循环
myArray.forEach(function (value) { console.log(value); });
无法使用break中断循环或用return返回到外层函数
for-in循环
for (var index in myArray) { console.log(myArray[index]); }
赋值给index的值不是实际的数字,是字符串’0’、’1’、’2’、’3’…..用于计算时可能出现未知的错误
for-in循环会遍历自定义属性
在某些情况下,这段代码可能按照随机顺序遍历数组元素
简而言之,for-in 是为普通对象设计的
map
arr.map(function(m,n,k){ console.log(m); //val console.log(n); //index console.log(n); //arr })
函数中第一个参数为遍历某一项的值
函数中第二个参数为遍历某一项的索引
函数值后的参数指向数组本身
some
用于4000
检测数组中元素是否满足指定条件
如果有一个元素满足就返回true,不再检测
some() 不会对空数组进行检测。
some() 不会改变原始数组。
$scope.documents.some(function (item) { if (item._id === $scope.currentDocument._id) { $scope.currentDocument = item; return true; } else { return false; } });
filter
过滤数组中的元素,以下面的数组记录重复值为例function uniqSet(arr) { var seen = new Set(); return arr.filter(function(el) { if(!seen.has(el)) { seen.add(el); return true; } return false; }); }
以上代码中的参数el为数组每次遍历到的那个值
使用return结束本次循环
EDN
相关文章推荐
- JS中的 map, filter, some, every, forEach, for...in, for...of 用法总结
- javaScript循环总结(for,for-in,for-of,forEach,map,filter,every,reduce,reduceRight)
- js中的循环遍历数组中的元素,ES6(for-of)、ES5(forEach、for-in)、通用(for(i=0;i<length;i++))
- js数组的遍历方法filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
- JavaScript 遍历方法总结 forEach some every filter map includes
- JS中 map, filter, some, every, forEach, for in, for of 用法总结
- [转载]JS中 map, filter, some, every, forEach, for in, for of 用法总结
- 数组遍历filter,forEach,map,every,some,reduce
- Js 数组——filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
- Js 数组方法:filter()、map()、some()、every()、forEach()、indexOf()、lastIndexOf()、
- JS数组方法总结shift()、unshift()、pop()、push()、concat()、splice()、filter()、map()、some()、every()、forEach()等方法
- ES5中Array新增加的API接口 forEach map filter some every indexOf lastIndexOf reduce reduceRight
- Js 数组——filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
- JS数组filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()实例
- JavaScript里的循环方法之forEach,for...in,for...of
- 全面解析JavaScript里的循环方法之forEach,for-in,for-of
- for...in和for...of循环以及forEach方法
- JavaScript 数组——filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
- for循环、for-in、forEach、for-of四大循环
- JS中 map, filter, some, every, forEach, for in, for of 用法总结