Javascript 检查成员是在实例中还是在原型中

Javascript 检查成员是在实例中还是在原型中,javascript,Javascript,在关键字中使用时,可以轻松检查对象中是否存在给定的键。然而,原型函数也是对象中的。比如说, var arr = {'a': 'foo', 'b': 'bar'} Object.prototype.dummyfunc = function() {} 'a' in arr // true 'dummyfunc' in arr // true 我如何区分一个成员是真正在对象实例中,还是作为对象的原型函数 谢谢。没钱了 我想你的意思是“a”而不是“foo”。@Box9:的确如此,我没有注意到,因为我没

在关键字中使用
时,可以轻松检查对象中是否存在给定的键。然而,原型函数也是对象中的
。比如说,

var arr = {'a': 'foo', 'b': 'bar'}
Object.prototype.dummyfunc = function() {}
'a' in arr // true
'dummyfunc' in arr // true
我如何区分一个成员是真正在对象实例中,还是作为
对象的原型函数

谢谢。

没钱了


我想你的意思是“a”而不是“foo”。@Box9:的确如此,我没有注意到,因为我没有复制粘贴它。@Box9:我想任何程序员都能理解我在这里所说的“foo”是什么意思。无论如何,文档链接是重点。当然,我只是认为这可能会令人困惑,因为问题中的示例明确地将“foo”作为一个值;)
obj.hasOwnProperty('foo')