TypeError:“x”不是非空对象

当预期对象时发生JavaScript异常“不是非空对象”某个地方,但没有提供。无效的不是对象,无法工作。

消息

TypeError:属性描述必须是对象:x(基于V8)TypeError:属性描述符必须是对象,得到“x”(Firefox)TypeError:属性描述必须是对象。(野生动物园)

错误类型

出了什么问题?

某个地方需要一个对象,但没有提供。无效的不是对象,但不起作用。你必须在给定的情况下提供适当的对象。

示例

需要属性描述符

当方法像对象.create()对象.defineProperty()对象.defineProperties()使用时,可选描述符参数需要一个属性描述符对象。提供没有对象(如数字)会抛出错误:

js公司
Object.defineProperty({},“键”,1);//TypeError:1不是非空对象Object.defineProperty({},“key”,null);//TypeError:null不是非null对象

有效的属性描述符对象可能如下所示:

js型
Object.defineProperty({},“key”,{value:“foo”,可写:false});

另请参见