var arr=[{a:1},{}]; arr.forEach(function(item,idx){ item.b=idx; });
上面代码执行后, arr 的值是:()
MDN:forEach 方法按升序为数组中含有效值的每一项执行一次callback 函数,那些已删除或者未初始化的项将被跳过(例如在稀疏数组上)。callback 函数会被依次传入三个参数:
- 数组当前项的值
- 数组当前项的索引
- 数组对象本身
<你不知道的javaScript中卷>----2.5值和引用简单值(即标量基本类型值,scalar primitive)总是通过值复制的方式来赋值/ 传递,包括
null、undefined、字符串、数字、布尔和ES6 中的symbol。
复合值(compound value)——对象(包括数组和封装对象,参见第3 章)和函数,则总
是通过引用复制的方式来赋值/ 传递。