我有一个名为 Account_Model.js 的模型,其中包含用于创建、读取、更新和删除 (CRUD) 用户帐户的查询。我需要不同的构造函数(要创建和更新,我需要将用户名、全名、密码等传递给构造函数,但当我想删除用户帐户时,我只需要传递用户名)。
var connection = require('../config/db.js');
class Account_Model{
constructor(params){
this.username = params.username,
this.fullname = params.fullname,
this.password = params.password
}
}
getData(){}....
这是一个好的做法吗?因为当我删除用户时,我只在 Account_Model 实例中传递用户名,并将全名和密码保留为空。谢谢
最佳答案
所以 ES6 不允许你有多个构造函数,也不允许重载方法。
您传递对象并仅填充某些字段的方式是完全有效的,并且在许多 NPM 模块中都可以看到。
您还可以查看此示例,该示例显示了通过检查传入参数的长度来处理传入的多个参数的不同方式: Why doesn't JavaScript ES6 support multi-constructor classes?
关于javascript - JavaScript 中的多个构造函数(重载),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50291548/