js的forEach,for in , for of

Posted ruo222

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js的forEach,for in , for of相关的知识,希望对你有一定的参考价值。

forEach遍历数组

[].forEach(function(value, index, array) { // ... });

例子

var myArry =[1,2,3,4];
myArry.desc =‘four‘;
myArry.forEach((value,index,arr)=>{
  console.log(value);
 
});
//1
//2
//3
//4
forEach遍历数组,而不是遍历对象哦,而且在遍历的过程中不能被终止,必须每一个值遍历一遍后才能停下来

注意其与jQuery的$.each类似,只不过参数正好是相反的

$.each([], function(index, value, array) { // ... });

$.each遍历数组或者类数组

第1个和第2个参数正好是相反的,这里要注意了,不要记错了。

for in遍历对象

循环遍历对象的key,是键值对前面的那一个哦 

一般不推荐遍历数组,因为for in遍历后的不能保证顺序,而且原型链上的属性也会被遍历到,因此一般常用来遍历非数组的对象并且使用hasOwnProperty()方法去过滤掉原型链上的属性

var myArry =[1,2,3,4];
myArry.desc =‘four‘;
 for(var value in myArry){ //循环key
  console.log(value)
}

//"0"
//"1"
//"2"
//"3"
//"desc" 注意这里添加上去的属性也被遍历出来了

 

for of遍历对象

循环遍历对象的值,是遍历键值对后面的那一个value哦 ,与for in遍历key相反

var myArry =[1,2,3,4];
myArry.desc =‘four‘;
for(var value of myArry){
  console.log(value)
}
//1
//2
//3
//4
  • 这是最简洁、最直接的遍历数组元素的语法
  • 这个方法避开了for-in循环的所有缺陷
  • 与forEach()不同的是,它可以正确响应break、continue和return语句

 

以上是关于js的forEach,for in , for of的主要内容,如果未能解决你的问题,请参考以下文章

js中的各种遍历(forEach, map, for, for...in, for...of)

js 各种循环的区别与用法(for in,forEach,for of)

JS中的forEach,for in,for of和for的遍历优缺点及区别

js中forEach,for in,for of的区别

前端js的数组的循环遍历 for / for of / for in / arr.forEach()

JS中的forEach,for in,for of和for的遍历优缺点及区别