定義一個(gè)變量:var test= {obj: {one: 'nihao'}}打印輸出: console.log(test , '直接輸出值:' + test['obj']['one']); 顯示如下:修改變量后 test['obj']['one'] = 'yueshu' , 再次打印輸出:console.log(test , '直接輸出值:' + test['obj']['one']) 顯示如下:我覺得很郁悶的是:為什么第一次打印 test對象 的時(shí)候,test['obj']['one'] 的值竟然是修改后的值,要知道修改是在打印之后發(fā)生的事啊!而且直接打印 test['obj']['one'] 反倒是修改之前的值!這個(gè)現(xiàn)象怎么是什么原因?qū)е碌???完整打印打碼: var test = {obj: {one: 'nihao'}};
console.log(test , '直接輸出值:' + test['obj']['one']); test['obj']['one'] = 'yueshu';
console.log(test , '直接輸出值:' + test['obj']['one']);
在修改js對象中的屬性(也是一個(gè)對象)的時(shí)候出現(xiàn)的怪異現(xiàn)象是怎么回事??
瀟瀟雨雨
2018-09-14 11:10:11