函数的__proto__是否等于Function.prototype`?

问题描述 投票:-1回答:1

在Node.js中运行以下代码(通过repl.it)会产生不一致的结果:

function F() {}

F.__proto__ == Function.prototype

为什么这有时会导致true,有时会导致false?有正确的答案吗?

javascript node.js prototype
1个回答
0
投票
object,即instanceof Function。该实例对象具有指向Function.prototype对象的原型链接。该链接不是固定的,可以在创建对象后更改其原型。

function F() {} console.log('original F:', Object.getPrototypeOf(F) === Function.prototype); Object.setPrototypeOf(F, {}); console.log('after prototype change:', Object.getPrototypeOf(F) === Function.prototype);
© www.soinside.com 2019 - 2024. All rights reserved.