关于函数传参的疑问

函数传参数是传引用,为什么下面这样赋值不起作用?

var a = [1,2,3]
function fn(arr){
  arr = a}var b = []funcArr(b)b   //  []

当遍历就可以

var a = [1,2,3]

function fn(arr){  for(var i in a){
      arr[i] = a [i]
  }
}var b = []funcArr(b)b   // [1,2,3]

这意味着我不能改变b?可以直接赋值
var a = [1,2,3]

function fn(){  b = a}var b = []funcArr(b)b   // [1,2,3]

但是通过传参数b就不能赋值但是可以改变b的key来改变b

function fn(arr){
  arr.push[1]
}var b = []funcArr(b)b   //  [1]


慕尼黑8549860
浏览 522回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript