不确定为什么我的对象中似乎缺少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)
答案 0 :(得分:40)
对象可能没有Object.prototype
作为其原型。
如果使用...创建对象,则会出现这种情况。
var data = Object.create(null);
你可以使用......
Object.prototype.hasOwnProperty.call(data, 'test');
...测试该属性是否存在。
答案 1 :(得分:-1)
这个黑客对我有用:
req.body = JSON.parse(JSON.stringify(req.body));