在ES6类中转换的函数对象文字

时间:2016-07-20 13:12:40

标签: javascript ecmascript-6 es6-class

我正在尝试将其中包含对象文字的函数转换为类,我不确定在转换为类时如何处理对象文字。例如:

function Commercial(channel, name) {
    this.recording = {
        isChannelLive: true,
        isNameRated: false,
        timeSlots: function() {
            this.active = false;
            this.recording = false;
        }
    };
}

所以我希望弄清楚如何做这样的事情:

class Commercial {
    constructor(channel, name) {
      this.channel = channel;
      this.name = name;
    }
    this.recording = {
        isChannelLive: true,
        isNameRated: false,
        timeSlots: function() {
            this.active = false;
            this.recording = false;
        }
    };
}

不知道如何处理对象文字?

我想将函数更改为具有通道和名称的构造函数的类,但不确定如何处理对象文字。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

您可以将当前在ES5构造函数中的完全相同的代码放入ES6类构造函数中:

class Commercial {
    constructor(channel, name) {
        this.channel = channel;
        this.name = name;
        this.recording = {
            isChannelLive: true,
            isNameRated: false,
            timeSlots: function() {
                this.active = false;
                this.recording = false;
            }
        };
    }
}