25

不知道为什么hasOwnProperty()我的对象似乎缺少...

我正在从 expressjs3 中的 http 帖子中获取数据,如下所示:

someControllerFunction: function(req, res){
            var data = req.body.loc;
...
}

但是,如果我这样做:

data.hasOwnProperty('test'); 

我得到:

Object object has no method 'hasOwnProperty' 

也许我遗漏了一些明显的东西,但是什么?

(节点 10.5,Express 3.2.1)

4

2 回答 2

46

该对象可能没有Object.prototype作为其原型。

如果对象是用...创建的,就会出现这种情况。

var data = Object.create(null);

你可以用...

Object.prototype.hasOwnProperty.call(data, 'test');

...测试该属性是否存在。

于 2013-05-16T10:39:20.283 回答
-1

这个技巧对我有用:

req.body = JSON.parse(JSON.stringify(req.body));
于 2013-07-24T09:00:17.800 回答