Javascript 对象getter别名

Javascript 对象getter别名,javascript,Javascript,我的问题很简单,如何在对象getter上生成别名 例如: MyClass.prototype = { constructor: MyClass, get a() { // do stuff }, get ab() { // do stuff }, get abc() { // do stuff } } 这里,a、ab和abc的作用完全相同,但必须有这3个不同的getter,或者更准确地说,必须在同一功能

我的问题很简单,如何在对象getter上生成别名

例如:

MyClass.prototype = {
    constructor: MyClass,
    get a() {
      // do stuff
    },
    get ab() {
      // do stuff
    },
    get abc() {
      // do stuff
    }
}
这里,
a
ab
abc
的作用完全相同,但必须有这3个不同的getter,或者更准确地说,必须在同一功能上有3个不同的名称

get a = ab = abc {

}
这显然不起作用,也不起作用

get a() = ab() = abc() {

}
有什么建议吗


谢谢

不要使用对象文字,一个对象文字中不能有一个。相反,您可以通过编程的方式重新使用相同的属性描述符

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

get ab(){a()}
,否?如果您正在寻找PHP magic类方法的Javascript等价物,我不确定它们是否以您希望的方式存在。谢谢,最后我这样做了:
var desc = {
    configurable: true,
    get: function() {
      // do stuff
    }
};
Object.defineProperties(MyClass.prototype, {
    a: desc,
    ab: desc,
    abc: desc
});