3 个回答

i是遍历元素的索引。
如原生的mapforEach方法。

['a', 'b', 'c'].map(function(item, i, array){
    console.log(item, i, array);
});
['a', 'b', 'c'].forEach(function(item, i, array){
    console.log(item, i, array);
});

item为当前项,即当前遍历的元素本身。分别为a, b, c
i为元素处于数组中的下标或索引。分别为 0, 1, 2
array为数组本身。值为['a', 'b', 'c']

i就是item在data中对应的index,可以省略

参考原生的 map , itemdata 项的引用, i 代表索引. i 可以省略的

举个例子:

var arr = [1,2,3];
arr.map(function(item){
  if(item == 2){
    item = 100; // arr 是不会变成[1,100,3],因为 item 改变不影响原数组,它只是个引用
  }
})

如果像下面这样,就会改变 arr 了

arr = arr.map(function(item){
  if(item == 2){
    item = 100; 
  }
  return item
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题