TypeError: null/undefined has no properties

當你嘗試存取 nullundefined 的屬性時,會發生 JavaScript 的「null (or undefined) has no properties」例外,因為它們沒有任何屬性。

訊息

TypeError: Cannot read properties of undefined (reading 'x') (V8-based)
TypeError: Cannot destructure 'x' as it is undefined. (V8-based)
TypeError: Cannot destructure property 'x' of 'y' as it is undefined. (V8-based)
TypeError: null has no properties (Firefox)
TypeError: undefined has no properties (Firefox)
TypeError: undefined is not an object (evaluating 'undefined.x') (Safari)
TypeError: Right side of assignment cannot be destructured (Safari)

錯誤類型

哪裡出錯了?

nullundefined 都沒有可以存取的屬性。因此,你不能對它們使用屬性存取器,也不能解構它們。

範例

null 和 undefined 沒有屬性

js
null.foo;
// TypeError: null has no properties

undefined.bar;
// TypeError: undefined has no properties

參見