Uncaught TypeError: Cannot set property 'xxx' of null

如題:Uncaught TypeError: Cannot set property 'xxx' of null

翻譯:未捕獲的類型錯誤:無法將屬性“xxx”設置爲空

情景重新:

1、創建了一個空對象a={};

2、調用一個函數向後臺發送請求,賦值a=data.value,並判斷a是否有值,有值將向a填充屬性,例如:a.name="張三";

3、接下來就到了報錯時刻:緊接着我要去delete a.name  也就是這裏報錯Uncaught TypeError: Cannot set property 'name' of null

原因:執行步驟2的時候,初始化返回data.value爲空,導致a=null,null是不能添加屬性的,所以報錯

解決方案:

方案一:不進行賦值a=data.value,直接判斷data.value是否爲空,這樣在這一步對a將沒有影響;

方案二:在第二步,添加else{a={}},即如果a=null,再次將其變爲空對象

 好尷尬,寫的不嚴謹導致的翻車現場,

至於其他的 比如Uncaught TypeError: Cannot set property 'onclick' of null,之前寫過了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章