gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-01 00:17:02 24 4
gpt4 key购买 nike

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

function F() {}

F.__proto__ == Function.prototype

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

最佳答案

函数 F() {} creates一个名为 F对象,它是 instanceof Function 。该实例对象有一个指向 Function.prototype 对象的原型(prototype)链接。该链接不是固定的,您可以在创建对象后更改其原型(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);

关于javascript - 函数的 `__proto__` 是否等于 `Function.prototype` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59694443/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com