gpt4 book ai didi

javascript - 确定成员是否在(Javascript)父类(super class)中定义

转载 作者:行者123 更新时间:2023-11-30 18:39:37 24 4
gpt4 key购买 nike

我正在使用“constructor chaining”来定义一个基类 (Super)。

function Super () {
this.member1 = 'superMember1';
this.member2 = 'superMember2';
}

function Sub() {
Super.call(this, arguments);
this.member3 = 'subMember3';
var t = this.hasOwnProperty("member1"); // gives me true, so I cannot use it
}

如何测试成员 (1,2,3) 是否定义(属于)在我的子类或父类(super class)中?

注意:`this["name"]' 不是这种方式,因为我只能决定一个值是否已被分配 - 而不是属于 Super 或 Sub。

作为Darhazer在下面的评论中,构造函数链会复制成员,因此它可能很棘手。

最佳答案

使用 hasOwnProperty() 检查成员是否在当前类中定义。如果不是 - 显然它是由父类(super class)定义的。

关于javascript - 确定成员是否在(Javascript)父类(super class)中定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7248935/

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