正题
ECMAScript 中所有函数的参数都是按值传递的。访问变量有按值和按引用两种方式,而参数只能按值传递。
基本类型参数传递:传给函数的是数值的一个复制,函数中对其的修改外部不可见。...a); //2
console.log(b); //1
}
change(a, b);
console.log(a); //1
console.log(b); //2
引用类型参数传递...4,2,3"
}
change(a,b);
console.log(a); //"4,2,3"
console.log(b); //"5,6"
a,b是change函数中的变量,在调用函数时传递了...因为用新引用覆盖在外部不可见,因为函数只是拿到了引用 并没有权力更改引用。...b = c;
}
change(a,b);
console.log(a); //"5,6"
console.log(b); //"4,2,3"
因为js没有块级作用域,所以它在change