相关疑难解决方法(0)

为什么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;
    }
}
Run Code Online (Sandbox Code Playgroud)

我想如果我们能用这种方式写出课程会很好.期待发生:

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}
Run Code Online (Sandbox Code Playgroud)

javascript constructor class ecmascript-6

48
推荐指数
5
解决办法
3万
查看次数

javascript中的多个构造函数

我有一个问题:我想知道是否可以模拟多个构造函数,就像在Java中一样(是的,我知道语言是完全不同的)?

假设我有一个叫做"Point"的类,它有两个值"x"和"y".

现在,假设它是Java版本,我想要两个构造函数:一个接受两个数字,另一个接受一个字符串:

public class Point {
    private int x;
    private int y;
    public Point(int x, int y) {
        this.x = x;
        this.y = y;
    }
    public Point(String coord) {
        this.x = coord.charAt(0);
        this.y = coord.charAt(1);
    }
    //...
}


//In JavaScript, so far I have
Point = function() {
    var x;
    var y;
    //...
}
Run Code Online (Sandbox Code Playgroud)

是否可以为Point.prototype.init提供两个声明?甚至可以在JavaScript中使用多个构造函数吗?

javascript

12
推荐指数
1
解决办法
1万
查看次数

javascript:相同类型对象的不同构造函数

是否可以在javascript中为一个类创建多个构造函数?即一个零参数,一个一个,一个两个,等等...

如果是这样,怎么样?

谢谢!

javascript multiple-constructors

6
推荐指数
1
解决办法
4582
查看次数