Javascript 分配操作是否总是从右向左复制数据?

Javascript 分配操作是否总是从右向左复制数据?,javascript,assignment-operator,Javascript,Assignment Operator,看看下面的Javascript代码: var myString = new String(); myString.myObject = "myObject..."; //works fine as it shows "myObject..." console.log("myString.myObject :" + myString.myObject); //OK myObject is also a string so it should give length and it w

看看下面的Javascript代码:

var myString = new String();
myString.myObject = "myObject...";

//works fine as it shows "myObject..."
console.log("myString.myObject        :" + myString.myObject);
//OK myObject is also a string so it should give length and it works fine
console.log("myString.myObject.length :" + myString.myObject.length);
//it should not give anything or undefined since nothing is given to myString
console.log("myString                 :" + myString);
//myString is not yet defined so it should give undefined or 0..
console.log("myString.length          :" + myString.length);

//lets make a simple assignment
myString = myString.myObject;
//it should just copy value of myObject to myString so there are two copies of string "myObject.."

//lets log all the data all the data as i did above

console.log("myString.myObject        :" + myString.myObject);

//and this part is giving error
//console.log("myString.myObject.length :" + myString.myObject.length);

console.log("myString                 :" + myString);
console.log("myString.length          :" + myString.length);
在前半部分(作业前),它的工作方式和我预期的一样,但在作业后,它给出了一个错误

赋值后,
myString.myObject
似乎被删除了。是吗

当我试图访问
myString.myObject
时,控制台出现红色错误。作业是否删除了myString.myObject,或者这里发生了其他事情?

当您这样做时

myString = myString.myObject;
您正在用其
myObject
属性值替换整个
myString
值。由于它本身没有
myObject
属性,因此赋值后在
myString
中没有属性

在此赋值之后,执行此操作时,
myString
的值为
“myObject…”

myString = myString.myObject;
您正在用其
myObject
属性值替换整个
myString
值。由于它本身没有
myObject
属性,因此赋值后在
myString
中没有属性

在此赋值之后,
myString
的值是
“myObject…”