关于Javascript中数组作为函数参数的问题?
let arr = [1,2,3,4,5]
function A(_arr){
_arr[1] = 0
}
A(arr)
console.log(arr) // 1 0 3 4 5
function B(_arr){
_arr = null
}
B(arr)
console.log(arr) // 1 0 3 4 5
为什么经过函数B,arr没有变成null, 从函数A来看明明传递的是引用啊
最佳答案
传递的是引用,不过是把引用保存到_arr
变量上,你再把此变量赋值为其他的东西,对原有的没有任何影响