SOURCE

/*
	关于js的引用问题
*/
// 1
var a = {n:1};
var b = a
a.n = 2; 
console.log(a,b)  // a,b 相同,引用的内存地址一致,a被赋值的对象没有发生改变,只是值发生了改变
a.s = 666;
console.log(a,b) // a,b 与以上相同,a,b相同,因为值只是增加,并未改变内存地址
a = {p:1}
console.log(a,b) // a = {p:1},b = {n:2,s:666},这个时候,a的值的内存地址发生改变,b并未改变

/*
	关于.引用的问题
*/
var x = {m:1}
var y = x
x.q = x = {m:2}
console 命令行工具 X clear

                    
>
console