Noticing: ECMAScript 中的所有参数传递都是值,不是通过引用传递参数
1.
var a = [1,2,3];
var b = a;
a = [4,5,6];
console.log(b) // [1, 2, 3]
2.
var a = [1,2,3];
var b = a;
a.pop();
console.log(b) // [1, 2]
3.
var a = 1;
var obj = {
b: 2
};
var fn = function () {};
fn.c = 3;
function test(x, y, z) {
x = 4;
y.b = 5;
z.c = 6;
return z;
}
test(a, obj, fn);
console.log(a + obj.b + fn.c) // 1 + 5 + 6 = 12