我想要通过类实例创建一个具有可变键的对象。
我尝试了以下代码:
class ACL {
constructor(key){
this[key] = {
read: false,
write: false,
delete: false
}
}
setRoleReadAccess(key, value){
[key] = {
read: value,
}
}
setRoleWriteAccess(key, value){
[key] = {
write: value,
}
}
setRoleDeleteAccess(value){
[key] = {
delete: value,
}
}
}
const userACL = new ACL("1234");
userACL.setRoleReadAccess("1234", true);
userACL.setRoleWriteAccess("1234", true);
console.log(userACL);
但我收到了以下错误提示:UnhandledPromiseRejectionWarning: TypeError: Invalid attempt to destructure non-iterable instance
我期望看到以下控制台输出:
ACL {
"1234": {
read: true,
write: true,
delete: false
}
}
请问有人可以告诉我如何解决这个问题吗?
[this.key]
是什么? - Alan Omar[this.key]
更改为this[key]
,并告诉我会发生什么。 - Francisco Santorelli