javascript 的console.log 問題
迷茫
迷茫 2017-06-30 09:58:12
0
4
725

1、chrome調試下 console列印一個對象,對象沒展開時,顯示是個空對象,點擊展開後竟然發現裡面有值,這是什麼鬼?
2、圖一是沒展開的顯示是個空物件圖二是展開的裡面竟然有值

#
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆(4)
三叔

你先打印了那個空對象,你打印後到你點開這段時間裡,ajax異步填充了這個對象,所以點出來才會有值,這是個非同步操作,你不能提前使用這個空對象。

我想大声告诉你

不打開控制台的情況下, console.log就是這樣的

阿神

console.log印一個物件時。如果是一個對象,他就指向一片記憶體。這片內存一開始為空,後來ajax拿來數據,填充了之後。就不為空了。 console.log你可以認為它是響應式的

黄舟

由於顯示在控制台中的資料不會即時更新,所以上面只是列印出來的日誌。

當你一開始印出Object時,它的確是空物件。
但是後來,AJAX回傳的資料填入了這個物件。
而你展開的時候,由於上面展開顯示是從記憶體裡讀取的數據,所以你點開的時候是有值的。

不過由於上面的日誌輸出後無法回撤或更新,所以上面印出來的Object{}還保留著。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板