下面的代码片断表明阵列像引用数组引用的规则是什么?
let arr = [1,2,3]
let arr2 = arr
arr[0] = 5
console.log(arr2) // [5, 2, 3]
console.log(arr) // [5, 2, 3]
然而,当我使用映射功能来编辑的数组:
let arr = [1,2,3]
let arr2 = arr
arr = arr.map(x => x * 2)
console.log(arr2) //[ 1, 2, 3 ]
console.log(arr) //[ 2, 4 ,6 ]
它不充当参考。我期待它的表现是这样的:
let arr = [1,2,3]
let arr2 = arr
function doubleNumbers(numbers){
for (let i = 0; i < numbers.length; i++) {
numbers[i] = numbers[i] * 2
}
return numbers
}
arr = doubleNumbers(arr)
console.log(arr2) //[ 2, 4 ,6 ]
console.log(arr) //[ 2, 4 ,6 ]
执行.map
.filter
.reduce
.forEach
功能创建数组的浅表副本与它一起工作时,返回的是什么?
[来自MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map):map()方法创建一个包含结果的新数组在调用数组中的每个元素上调用一个提供的函数。 –
阅读文档 – Weedoze