ES6在类内部进行销毁

时间:2019-12-01 08:29:29

标签: javascript typescript

我有一个返回元组[number, number, number]的函数。我想使用解构将元组返回的值分配给我的类变量,如下所示:

let [this.a, this.b, this.c] = functionThatReturnsTupleWithThreeNumbers()

但这不起作用。

2 个答案:

答案 0 :(得分:2)

只需删除let,您就可以开始了:

class Foo {
    a;
    b;
    c;

    bar() {
        [this.a, this.b, this.c] = [1, 2, 3];
    }
}

const foo = new Foo();
foo.bar();

console.log(foo);

更多信息here

打字稿playground

答案 1 :(得分:1)

您需要在班级中拥有道具并将元组破坏为它们:

class MyClass {
    a: number;
    b: number;
    c: number;

    constructor(tuple: ReadonlyArray<number>) {
        [this.a, this.b, this.c] = tuple;
    }
}