gpt4 book ai didi

javascript - 无法访问 __proto__ 上的 Getter 方法

转载 作者:行者123 更新时间:2023-12-01 02:46:30 25 4
gpt4 key购买 nike

我正在学习 Javascript 原型(prototype)并了解了很多关于它们的用法。但我对以下内容感到困惑,它是如何不起作用的。

function Employee(name)
{
this.name = name;
}

Employee.prototype.code = "SIMPLE";
Employee.prototype.getName = function()
{
return this.name;
}

var a = new Employee("Manish");
var b = new Employee("Vikash");

a.__proto__.code // SIMPLE
a.__proto__.getName() // Undefined

为什么当 a.__proto__ == Employee.prototype 返回 true 时我们无法访问 __proto__ 上的函数。

最佳答案

上下文(又名 this )是在您调用函数时在 javascript 中确定的。所以这里:

a.__proto__.getName()

上下文是 a.__proto __ ,并且没有 name 属性,因此它返回未定义。这里:

a.getName()

您调用 getName 时上下文为 a,并且 a 有一个名称...

关于javascript - 无法访问 __proto__ 上的 Getter 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47227359/

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