Javascript 为什么getPrototype方法调用会导致错误?
如果每个对象最终都从最高级别的对象继承,并且该最高级别的对象具有getPrototypeOf()函数/方法,那么为什么下面的代码会产生错误Javascript 为什么getPrototype方法调用会导致错误?,javascript,prototype,Javascript,Prototype,如果每个对象最终都从最高级别的对象继承,并且该最高级别的对象具有getPrototypeOf()函数/方法,那么为什么下面的代码会产生错误 obj = {}; proto = obj.getPrototypeOf(obj); 错误:对象不支持属性或方法“getPrototypeOf” 当我在IE10的(F12开发者工具)本地选项卡中查看时,它说obj有一个原型,原型有方法,其中一个是isPrototypeOf 以下是我的完整html: <!DOCTYPE html> <htm
obj = {};
proto = obj.getPrototypeOf(obj);
错误:对象不支持属性或方法“getPrototypeOf”
当我在IE10的(F12开发者工具)本地选项卡中查看时,它说obj有一个原型,原型有方法,其中一个是isPrototypeOf
以下是我的完整html:
<!DOCTYPE html>
<html>
<head>
<script>
obj = {};
proto = obj.getPrototypeOf(obj);
</script>
</head>
<body>
</body>
</html>
obj={};
proto=obj.getPrototypeOf(obj);
请注意:我特别想问的是,为什么它显示为obj原型下的一个方法,但却产生了一个错误(如果假定它只是Object的一个方法,而不是继承的原型)?我会发布它的屏幕截图,但我的声誉太低,因为我是新来的。
getPrototypeOf
在对象上,而不是对象的实例上,请尝试
obj = {};
proto = Object.getPrototypeOf(obj);
这是因为getPrototypeOf
不是所有对象上的一个方法,而是一个<代码>对象
对象。使用Object.getPrototypeOf(obj)
试试看
obj = {};
proto = Object.getPrototypeOf(obj)
检查文档:我做了。这对我回答这个问题没有帮助。(或者我没看到)你说的是
isPrototypeOf
?相对于getPrototypeOf
,isPrototypeOf属于Object.prototype,因此所有对象都继承该方法。getPrototypeOf仅属于对象构造函数对象。抱歉!我现在看到了。我引用的是getPrototypeOf,但我看到的是isPrototypeOf。你是对的。谢谢。但是为什么这个方法会出现在obj的原型下?这是在哪里发生的?IE10 F12开发者界面在脚本选项卡下,然后是本地选项卡(当我展开obj的+符号时)。