Javascript - 这是对象组合吗?

时间:2017-10-13 04:27:27

标签: javascript composition

我想知道以下代码是否会被视为“has-a”关系而不是“is-a”关系。我想知道这是否被认为是“紧密耦合”。我试图将某些变量保密。使用符号我可以隐藏它们。我写getFirstName()以缩短它,这也让我知道它来自哪个Mixin。我只想要一些反馈,我还是个新手。我无法在谷歌上找到任何关于Javascript对象组成的内容。我试图通过将它们分配给原型来做mixins。我的理解是对象组合是用其他对象创建的对象。

 let InfoMixin = (function(){
    let firstName = Symbol();
    function infoMix(first){
        this[firstName] = first; 
    }
    infoMix.prototype.getFirstName = function(){
        return this[firstName];
    };
    return infoMix;
})();

function Student(first){
    this.infoMix = new InfoMixin(first);
}
Student.prototype.getFirstName = function(){
    return this.infoMix.getFirstName();
}


let student1 = new Student('Nick');
alert(student1.getFirstName());

0 个答案:

没有答案