訊息
TypeError: Property description must be an object: x (V8-based) TypeError: Property descriptor must be an object, got "x" (Firefox) TypeError: Property description must be an object. (Safari)
錯誤型別
TypeError
哪裡出錯了?
在某個地方需要一個物件,但未提供。null 不是一個物件,因此不會起作用。你必須在給定情況下提供一個正確的物件。
示例
期望屬性描述符
當使用 Object.create() 或 Object.defineProperty() 和 Object.defineProperties() 等方法時,可選的描述符引數需要一個屬性描述符物件。如果未提供物件(例如只提供一個數字),則會丟擲錯誤。
js
Object.defineProperty({}, "key", 1);
// TypeError: 1 is not a non-null object
Object.defineProperty({}, "key", null);
// TypeError: null is not a non-null object
一個有效的屬性描述符物件可能如下所示:
js
Object.defineProperty({}, "key", { value: "foo", writable: false });