window.onload = function() {
var num1 = 5;
var num2 = num1;
num2 = 4;
console.log(num1); // 5
console.log(num2); // 4
var obj = {
name: "狗子诶"
};
var objec = obj;
objec.name = "江小白";
console.log(obj.name); //江小白
};
// 总结:基本数据类型的变量使用赋值形式(也就是=)复制,那么num2(另存值)虽然只是num1(原有值)的一个副本,但是两者之间是完全独立的,互相不受影响,因此改变num2(另存值)的值,num1(原有值)不会受影响;引用数据类型的变量使用赋值形式(也就是=)复制, 而objec副本实际上复制的是obj变量指向对象的一个指针,因此objec指向的对象与obj相同,所以改变objec的name属性,obj的name属性也会随之改变.