很多時候經常有開發者反饋這種問題
var userName = response.data.user.name
// Uncaught TypeError : Cannot read property user of null
對 JavaScript 初學者來說,可能會把上句話理解成 user
是 null
。
英語的 " of " 是有倒裝的含義,這句報錯的真實意圖并不是說 user
是 null
,而是 null
中沒有 user
,而本質原因是data
是 null
,就像這樣
var data = null;
var userName = data.user.name
// Uncaught TypeError : Cannot read property user of null
所以當遇到這種問題事,請一定腦子要清醒,想清楚到底是哪個對象為空。