我需要更改对象的值。在javascript中我会做类似的事情
data = {};
this.data.password = this.password;
我可以做些什么来改变你可能为这个对象添加一个新的键/值?
答案 0 :(得分:3)
您还可以使用括号语法指定对象的键,如下所示:
this.data["password"] = this.password;
这非常有用,尤其是当您需要将对象的键设置为某个其他变量的值时。
由于我们正在处理TypeScript,“正确”的方式可能是指定 this.data 的类型。
例如,您可以设置一个接口,然后让IDE /编译器知道this.data有一个密码属性:
interface MyData {
password: string;
}
let data:MyData = {};
this.data.password = this.password;
您可以解决的另一种(更快,但更具技术性的债务创造)方式是为数据提供任何的类型。
let data:any = {};
this.data.password = this.password;
正如您已经注意到您也可以给它类型为Object,因为这是一种特殊类型,允许您在其上分配任何属性(有关更多信息,请参阅this TypeScript Basic Types docs page)。
快乐的编码!
答案 1 :(得分:0)
当我将声明更改为
时,这有效data : Object;
现在我可以做到
this.data.password = this.password;