为什么JavaScript ES6不支持多构造函数类?

15 浏览
0 Comments

为什么JavaScript ES6不支持多构造函数类?

我想以以下方式编写我的Javascript类。

class Option {
    constructor() {
        this.autoLoad = false;
    }
    constructor(key, value) {
        this[key] = value;
    }
    constructor(key, value, autoLoad) {
        this[key] = value;
        this.autoLoad = autoLoad || false;
    }
}

我认为如果我们能以这种方式编写类会很好。

期望发生的情况是:

var option1 = new Option(); // option1 = {autoLoad: false}
var option2 = new Option('foo', 'bar',); // option2 = {foo: 'bar'}
var option3 = new Option('foo', 'bar', false); // option3 = {foo: 'bar', autoLoad: false}

0