ES6类添加函数对象

时间:2017-08-31 08:45:03

标签: javascript node.js ecmascript-6 es6-class

我试图将函数对象包含为静态类属性,以调用myClass.setPayload [id] .call(this,buffer)。

实际上,我有这个:

var setPayload = {
    0x01: function(buffer){...},
    0x0a: function (buffer) {...}
}

class myClass{
    constructor(buffer){
        ...
        setPayload[buffer[1]].call(this, buffer.slice(...))
    }
}

目标是抑制构造函数的nedd,所以我尝试以下,这不起作用:

class myClass{
    static setPayload = {
         0x01: function(buffer){...},
         0x0a: function(buffer){...}
    }
}

建议?

1 个答案:

答案 0 :(得分:2)

静态仅用于定义类的方法 - 请参阅static - JavaScript 您可以设置:

MyClass.setPayLoad = ...

// or make a getter function:
class MyClass {
    static get setPayLoad() {
         return ....;
    }
}