向空对象添加属性
Adding properties to an empty object
我有这个代码
var MY_OBJ = {};
MY_OBJ.test = function(){}
并且我正在使用 Vscode,我得到 属性 测试未定义。
我如何让这只是一个警告。
这将解决您的问题
var MY_OBJ:any = {};
MY_OBJ.test = function(){}
将您的对象定义为 test
属性:
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 有什么意义?
我有这个代码
var MY_OBJ = {};
MY_OBJ.test = function(){}
并且我正在使用 Vscode,我得到 属性 测试未定义。 我如何让这只是一个警告。
这将解决您的问题
var MY_OBJ:any = {};
MY_OBJ.test = function(){}
将您的对象定义为 test
属性:
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 有什么意义?