常见遍历数组的区别

访问数组中每个元素的过程叫做遍历。

数组中的forEach和map的区别?

forEach和map的相同点

  • 相同点都是循环遍历数组中的每一项
    forEach和map方法里每次执行匿名函数都支持3个参数,

    • 参数分别是
      ① item(当前每一项)
      ② index(索引值),
      ③arr(原数组)
  • 匿名函数中的this都是指向window只能遍历数组都 不会改变原数组

区别
map方法

  • map方法返回一个新的数组,数组中的元素为原始数组调用函数处理后的值
  • map方法不会校验空数组,不会改变原数组
  • 浏览器支持:chrome、Safari1.5+、opera 都支持 lE9+,若arr 为空数组,则map 方法返回的也是一个空数组。

forEach 方法

  • forEach 方法用来调用数组的每个元素,将元素传给回调函数
  • forEach 对于空数组是不会调用回调函数的。无论 ar是不是空数组,forEach 返回的都是 undefined。这个方法只是将数组中的每一项作为callback 的参数执行一次。

for…in 和 for…of 的区别

  • for…in 循环可以对数组和对象进行遍历操作,for…of循环只能遍历数组。
  • for…in 循环出的是 key,for…of 循环出的是 value 。
  • for…of 是 ES6新引入的特性。修复了ES5 引入的for…in的不足。
  • for…of 不能循环普通的对象,需要通过和
    Object.keys()搭配使用!

推荐在循环对象属性的时候独用for…in,在遍历数组的时候的时候使用for…of

你可能感兴趣的:(前端找工作之路,遍历数组,map,和,forEach,for...in,for...of)