猿问

函数中新建数组的问题

var arr=[1,2,3];

function change(arr){

arr=new Array(100,200,300);

}

change(arr);

console.log(arr[0]);

/*我知道最后arr[0]输出是1,可是change(arr)中已经给新的数组赋值了,那用什么表示新的数组呢,名字都是arr啊*/

慕沐5017275
浏览 1009回答 1
1回答

qq_清浅安然_0

您表述的含义我的理解是您没有理解全局作用域和函数作用域,arr在函数里变成了局部变量,您在函数外声明的是全局变量arr,他们虽然是同名的但是其实是两个变量,所以你不用纠结新数组怎么命名,如果你想用arr是ok的,因为他们在不同的作用域中
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答