gpt4 book ai didi

javascript 原型(prototype)设计 : why doesn't this work?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:27:58 24 4
gpt4 key购买 nike

我正在考虑尝试以下代码:

var classA = function() {};
classA.prototype = { x: 4, y: 6 };
classA.prototype.prototype = { z: 10 };
var foo = new classA();
alert(foo.z);

为什么警报返回为未定义? javascript 不应该沿着原型(prototype)链寻找 z 吗?

最佳答案

默认情况下,对象原型(prototype)是一个空对象。

classA.prototype = { x: 4, y: 6 };
classA.prototype.prototype = { z: 10 };

相当于

classA.prototype = { x: 4, y: 6, prototype: { z: 10 }};

您刚刚将名为 prototype 的属性添加到 classA

z 是属于 classA

的对象 prototype 的属性

alert(foo.prototype.z); 会起作用

关于javascript 原型(prototype)设计 : why doesn't this work?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5794240/

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