首页 > 解决方案 > 使用箭头函数和类 get | 减少定义类常量的代码

问题描述

我正在尝试在 javascript 中创建常量。我发现这个答案很有帮助。之后,我写了这样的东西。

const ERR1 = 'Error 1',
  ERR2 = 'Error 2',
  ERR3 = 'Error 3',
  ERR4 = 'Error 4'

class Error {
  static get ERR1 () {
    return ERR1
  }

  static get ERR2 () {
    return ERR2
  }

  static get ERR3 () {
    return ERR3
  }

  static get ERR4 () {
    return ERR4
  }
}

虽然这很完美,但我想减少代码,因为它非常冗长。可能是一个班轮在课堂上使用这样的箭头函数。

static get ERR1 = () => ERR1
static get ERR2 = () => ERR2
...

但是,这给出了错误说明Unexpected token =。尝试了相同的static get ERR1: () => ERR1错误和相同的错误Unexpected token :

要回答这个问题,任何一个都足够了。

标签: javascriptclassecmascript-6arrow-functions

解决方案


Javascript 语法禁止 getter 成为箭头函数(有关更多信息,请参阅https://stackoverflow.com/a/33827643/1358308 )

我可能会做类似的事情:

const Error = Object.freeze({
  ERR1: 'Error 1',
  ERR2: 'Error 2',
  ERR3: 'Error 3',
  ERR4: 'Error 4',
})

推荐阅读