对象getter别名

时间:2014-09-07 08:32:06

标签: javascript

我的问题很简单,我如何在物体吸气剂上制作别名。

示例:

MyClass.prototype = {
    constructor: MyClass,
    get a() {
      // do stuff
    },
    get ab() {
      // do stuff
    },
    get abc() {
      // do stuff
    }
}

此处aababc完全相同,但必须拥有这3种不同的getter,或者更准确地说,必须有3个不同的名称在相同的功能。

get a = ab = abc {

}

显然不起作用,

也没有
get a() = ab() = abc() {

}

有什么建议吗?

由于

2 个答案:

答案 0 :(得分:1)

get ab(){
    return this.a;
}

答案 1 :(得分:1)

不要使用对象文字,你不能在其中使用self-reference。相反,define the properties以编程方式 - 您确实可以为每个属性描述符重复使用相同的属性描述符。

var desc = {
    configurable: true,
    get: function() {
      // do stuff
    }
};
Object.defineProperties(MyClass.prototype, {
    a: desc,
    ab: desc,
    abc: desc
});