joh*_*thy 2 javascript arrays ecmascript-6
这是有问题的代码:
const array = [
1, 2, 3
]
array.map(item => {
item = item + 1
})
console.log(array)
Run Code Online (Sandbox Code Playgroud)
我认为该方法item中的(第一个)参数map是对数组中原始项目的引用,并且直接改变它会更改第一个数组的内容......这不是真的吗?
您的数组包含基元类型元素(此处为整数)。原始类型的变量不能通过其引用进行改变。例如,如果数组的元素是对象,则可以进行变异,如下所示:
var array = [{val: 1}, {val: 2}, {val: 3}];
array.map(item => {item.val = item.val + 1});
console.log(array);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2215 次 |
| 最近记录: |