1.创建新地址
var a = [1];
var b = a; //此处a,b指向共一个地址
b = [10] // 见到{} [] 就意味着创建了一个新的地址 相当于又重新 New Array() function(){}
console.info(a); //[1]
console.info(b) //[10]
2.一个地址改内容
var a = [1];
var b = a; // 此时a,b指向同一个地址
b[1] = 10 // 给b增加新的元素
console.info(a) // [1,10]
console.info(b) // [1,10]
3.函数传参
var a = [1];
function f(a){
a = [10]
}
f(a);
console.info(a)
//这个题做的时候可以把形参换一下
var a = [1];
function f(b) {
b = [10]
}
f(b);
console.info(a) // [1]
//此时答案就出来了
4.函数传参 和上个题一样
var a = 1;
function f(a){
a = 10
}
f(a);
console.info(a) // 1
5.把全局变量的a赋值给局部变量的a 同一地址赋值
var a = [1];
function f(a){
a[1] = 10
}
f(a);
console.info(a) //[1,10]
6.实参与形参
var a = [1];
function f(a){
a[1] = 10
a = 3;
}
f(a);
console.info(a)
相当于
var a = [1];
function f(b) {
a[1] = 10
console.log(a) //[1,10]
b = 3;
console.log(b) // 3
}
f(a);
console.info(a) //[1,10]