我的代码类似于
emp1 = emp;
emp = emp2;
如果对象是引用,那么为什么emp1不等于emp2?
为什么emp1打印" shilpa"而不是" manish"
var emp =
{
name : "manish",
number : 10
}
var emp1 = emp;
var emp2 =
{
name : "shilpa",
number : 20
}
emp = emp2;
console.log(emp);
console.log(emp1);
console.log(emp2);

答案 0 :(得分:0)
这就是发生的事情。
您创建一个变量emp
,它指向内存中存储您定义的对象值的位置。
然后你创建一个变量emp1
,它指向对象值内存中的相同位置。
然后定义一个新变量emp2
,它指向存储器中存储您定义的对象值的位置。
然后将emp
指向emp2
对象值的内存中的nrw位置。
但emp1
仍然指向第一个位置/对象。
我认为您在变量声明和方法/函数中传递参数(通过引用或按值)之间感到困惑