gpt4 book ai didi

javascript - 如果对象是构造函数,如何调用对象上的方法?

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

Object 对象被定义为构造函数。但是,我可以调用它的方法,例如 Object.create()、Object.freeze()、Object.assign() 等...我还可以通过键入“var foo = new Object()”来创建一个新对象”。

那么如果 Object 是一个构造函数,我如何能够直接调用它的方法?

这一直让我很困惑。

最佳答案

构造函数本身也可以拥有属性。在现代语法中,这些称为静态方法。例如:

class Foo {
static fooRelatedFn() {
console.log('foo related function running');
}
constructor() {
this.bar = 'bar';
}
}

Foo.fooRelatedFn();
const foo = new Foo();
console.log(foo.bar);

使用传统语法可以完成同样的事情,只需分配给构造函数的属性即可:

function Foo() {
this.bar = 'bar';
}
Foo.fooRelatedFn = function() {
console.log('foo related function running');
}

Foo.fooRelatedFn();
const foo = new Foo();
console.log(foo.bar);

关于javascript - 如果对象是构造函数,如何调用对象上的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52379306/

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