Typescript 向空对象添加属性

Typescript 向空对象添加属性,typescript,visual-studio-code,nativescript,Typescript,Visual Studio Code,Nativescript,我有这个密码 var MY_OBJ = {}; MY_OBJ.test = function(){} 我使用的是Vscode,没有定义属性测试。 我如何让这仅仅是一个警告。这将解决您的问题 var MY_OBJ:any = {}; MY_OBJ.test = function(){} 这会解决你的问题 var MY_OBJ:any = {}; MY_OBJ.test = function(){} 将对象定义为具有测试属性: var MY_OBJ: {test?: Function} = {

我有这个密码

var MY_OBJ = {};
MY_OBJ.test = function(){}
我使用的是Vscode,没有定义属性测试。
我如何让这仅仅是一个警告。

这将解决您的问题

var MY_OBJ:any = {};
MY_OBJ.test = function(){}

这会解决你的问题

var MY_OBJ:any = {};
MY_OBJ.test = function(){}

将对象定义为具有
测试
属性:

var MY_OBJ: {test?: Function} = {};

MY_OBJ.test = function() { };
或者,按以下方式设置属性:

MY_OBJ['test'] = function() { };
为了进一步确保类型安全,请将
MY_OBJ
定义为对象:

var MY_OBJ: { [propName: string]: any } = {};
这将防止出现错误,例如
MY_OBJ=14

如果希望此对象始终具有函数值键,则

var MY_OBJ: { [propName: string]: Function } = {};
将防止出现错误,例如
MY_OBJ['test']=14


如果您打算以公认答案中建议的方式使用
任何
,那么首先使用TypeScript有什么意义?

定义您的对象以具有
测试
属性:

var MY_OBJ: {test?: Function} = {};

MY_OBJ.test = function() { };
或者,按以下方式设置属性:

MY_OBJ['test'] = function() { };
为了进一步确保类型安全,请将
MY_OBJ
定义为对象:

var MY_OBJ: { [propName: string]: any } = {};
这将防止出现错误,例如
MY_OBJ=14

如果希望此对象始终具有函数值键,则

var MY_OBJ: { [propName: string]: Function } = {};
将防止出现错误,例如
MY_OBJ['test']=14


如果你打算用公认答案中建议的方式使用
any
,那么首先使用TypeScript有什么意义呢?

那么,你的建议基本上是在TypeScript的后面。是的,但我认为dashman需要动态地向对象添加属性,所以我认为这是一个最好的解决方案。所以,基本上你们的建议是在TypeScript后面。是的,但我认为dashman需要动态地向对象添加属性,所以我认为这是最好的解决方案。