javascript - 使用箭头函数和类 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 :
要回答这个问题,任何一个都足够了。
- 为什么这是一个错误?
- 是否可以使用箭头语法编写类获取?
- 有没有更短的方法来定义常量?
解决方案
Javascript 语法禁止 getter 成为箭头函数(有关更多信息,请参阅https://stackoverflow.com/a/33827643/1358308 )
我可能会做类似的事情:
const Error = Object.freeze({
ERR1: 'Error 1',
ERR2: 'Error 2',
ERR3: 'Error 3',
ERR4: 'Error 4',
})
推荐阅读
- sql - Oracle SQL:根据每个分区中的第一行进一步对 PARTITION BY 组进行排序
- java - 使用 JPA 和 Hibernate 的复合键
- ios - 使用所需的初始化编码器从另一个类调用方法
- elasticsearch - 在 Flink 中写入动态 Elasticsearch 集群
- excel - 根据单元格值查找行,然后根据找到的行值复制粘贴 - 未设置对象变量
- python - 如何在 Python 中编写一个程序来判断一个列表是否是“回文”?
- node.js - 使用'http'/'https'模块的NodeJS(Typescript ES2020)中的并行HTTPs(出站)GET请求
- azure - 授予托管标识权限以通过 ARM 模板部署脚本在 Azure AD 中创建应用注册
- vba - SeleniumBasic - 与同一个 Chrome 会话进行交互
- hashicorp-vault - Hashicorp Vault - 数据库机密引擎在 UI 中不可见