断言对象上存在可枚举属性

时间:2016-02-18 00:45:35

标签: javascript node.js assert

是否可以使用核心Node.js Assert模块来检查对象上是否存在属性,即使属性是伪造的?

https://nodejs.org/api/assert.html

通常我们可以通过运行

来检查对象是否具有属性
var assert = require('assert');
assert(obj.prop);

但是如果obj.prop存在但是是假的,这将不起作用。我更喜欢使用Node.js断言模块,而宁愿避免使用其他解决方案,谢谢。

也许最好的方法是:

    var assert = require('assert');
    assert(prop in obj);

1 个答案:

答案 0 :(得分:2)

可以断言对象上存在可枚举属性。建议的代码非常有效:

var assert = require('assert');
assert(prop in obj);

如果该属性不存在,则抛出AssertionError