var foo = { n: 1 };var bar = foo;
foo.x = (foo = { n: 2 });// console.log(JSON.parse(foo));console.log(foo);console.log(foo.x);console.log(bar.x);和var foo = { n: 1 };var bar = foo;
foo.x = foo = { n: 2 };// console.log(JSON.parse(foo));console.log(foo);console.log(foo.x);console.log(bar.x);為什么答案一樣 我想問一下,,.和()的優先級是相同的 所以代碼是從右往左執行的 如果對象屬性foo.x的沒有預先給foo.x=undifiend 我將代碼改成foo.x = (foo = {n:2}); 這樣foo.x.n = 2;我就想問一下 js加載時預先把對象的屬性讀取和分配內存嗎,本人小白,還請大神指點一二
javascript 對象屬性預加載問題
一只萌萌小番薯
2018-10-17 17:14:37