gpt4 book ai didi

javascript - javascript中同一类(对象)中的静态和非静态数据

转载 作者:行者123 更新时间:2023-11-28 12:47:21 25 4
gpt4 key购买 nike

据我了解,在 JavaScript 中创建类有两种方法

var MyObj = function(val)
{
this.vari = val;
}

其中 val 将是非静态成员。

鉴于,

var MyObj = new Object();
MyObj.vari = "";

这是一个单一对象,因此它的成员的行为就像静态成员一样。我的问题是,我们如何在同一个类中同时拥有静态和非静态内容?

最佳答案

JavaScript 中没有类,只有对象。

当您创建一个新对象时,您是从函数的原型(prototype)“扩展”,而不是函数本身。为了使变量或函数看起来是静态的,您必须将其附加到用于创建对象的函数,而不是其原型(prototype)。

js> var Foo = function(){ this.member = "member"; };
js> Foo.staticMember = "staticMember";
js> var f = new Foo();

js> Foo.member;
undefined
js> Foo.staticMember;
"staticMember"
js> f.member;
"member"
js> f.staticMember;
undefined

关于javascript - javascript中同一类(对象)中的静态和非静态数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6217213/

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