【问题标题】:Multiple constructor in javascript (overloading)javascript中的多个构造函数(重载)
【发布时间】:2018-10-21 19:48:23
【问题描述】:

我有一个名为 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 实例中传递用户名并将全名和密码留空。谢谢

【问题讨论】:

标签: javascript node.js oop express


【解决方案1】:

所以 ES6 不允许你有多个构造函数并且能够重载方法。

您传递对象并仅填充某些字段的方式是完全有效的,并且在许多 NPM 模块中都可以看到。

您还可以查看此示例,该示例显示了通过检查传入参数的长度来处理传入的多个参数的不同方式:Why doesn't JavaScript ES6 support multi-constructor classes?

【讨论】:

    猜你喜欢
    • 2011-11-20
    • 1970-01-01
    • 2011-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-05
    相关资源
    最近更新 更多