有没有办法在不使用'this'(ES6)的情况下引用类方法和变量?

时间:2018-04-15 08:54:56

标签: javascript

我的应用程序中有一个大类,编写这样的代码行变得很麻烦:

this.reduceValue(this.value1 - this.value2);

其中'this'对象被过度使用以访问类方法和变量。

例如,在本课程中

var subtractor = class {
    constructor(val1, val2) {
        this.value1 = val1;
        this.value2 = val2;
    }

    subtract() {
        this.value2 -= this.value1;
    }
}

如何以允许我访问value1value2的方式重写此类,而无需使用'this'关键字。

1 个答案:

答案 0 :(得分:0)

检查是否需要:

var subtractor = class {
    constructor(...args) {
        args.forEach((x, i) => this[`value${i + 1}`] = x)
    }

    subtract() {
        this.value2 -= this.value1;
    }
}