TypeScript:使用函数参数作为JSON密钥名称

TypeScript: Using function parameter as JSON-key name

本文关键字:JSON 密钥 参数 函数 TypeScript      更新时间:2023-09-26

以下情况:

setFlags(data:any, key:string) {
    this.flags.key= data;
}

假设数据是{'foo': 'is cool'},密钥是'bar',标志应该看起来像:

{
    'bar': {'foo': 'is cool'}
}

有什么简单的解决方案吗?

编辑:对评论中的问题的回答:它涉及一个TypeScriptClass,它将用作存储标志的服务。

@Injectable()
export class FormStoreService {
    flags:any = {};
    constructor() {}
    setFlags(data:any, key:string) {
        this.flags.key = data;
    }
}

在编写foo.bar时,您正在设置一个名为bar的属性。如果属性的名称是动态的,则应使用foo[bar]语法。因此setFlags方法变成

setFlags(data:any, key:string) {
 this.flags[key] = data;
}