gpt4 book ai didi

javascript - 在javascript es6中,如何在不使用类名的情况下调用构造函数方法?

转载 作者:行者123 更新时间:2023-11-29 23:41:36 26 4
gpt4 key购买 nike

我正在尝试创建一个可以处理基本 CRUD 功能的父类,但我不知道如何在静态方法中调用构造函数。

class Model {
static find(id) {
var attrs = someDBcalls();
var obj = new CurrentClass(attrs); // how?
return obj;
}
}

class User extends Model {
constructor(attrs){
// initialize class.
}
}

User.find(1); // shall return an User object.

最佳答案

您可以使用 var obj = new this(attrs); 如下所示:

function someDBcalls(id) {
return { id, success: true };
}

class Model {
static find(id) {
var attrs = someDBcalls(id);
var obj = new this(attrs);
return obj;
}
}

class User extends Model {
constructor(attrs) {
super();
// initialize class.
console.log(attrs);
}
}

var user = User.find(1); // shall return an User object.
console.log(user instanceof User);

关于javascript - 在javascript es6中,如何在不使用类名的情况下调用构造函数方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45110451/

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