3 回答

DIEA
TA貢獻1820條經(jīng)驗 獲得超2個贊
console.log 輸出調(diào)用此語句時參數(shù)的快照,展開(即 console.dir)時輸出的是參數(shù)在內(nèi)存中最新的狀態(tài)。
var b = {a: 0};
[1, 2, 3].forEach(i => [b.a = i, console.log(b), console.dir(b)])
// {a: 1} 展開后為 {a: 3}
// Object 展開后為 {a: 3}
// {a: 2} 展開后為 {a: 3}
// Object 展開后為 {a: 3}
// {a: 3} 展開后為 {a: 3}
// Object 展開后為 {a: 3}
如果發(fā)現(xiàn)有快照與內(nèi)存最新狀態(tài)不匹配的情況,那就是在快照之后發(fā)生了修改操作。

白豬掌柜的
TA貢獻1893條經(jīng)驗 獲得超10個贊
之所以不一致,是因為你的賦值是在 輸出(賦值前) 到 展開(賦值后) 的這個時間段里。
也就是說,你輸出的時候amout還是null,然后你才給它賦值為1
添加回答
舉報
0/150
提交
取消