声明这样的数组之间的真正区别是什么:
var myArray = new Array();
Run Code Online (Sandbox Code Playgroud)
和
var myArray = [];
Run Code Online (Sandbox Code Playgroud) 我想有一个包含字符串错误消息的数组.这是我提出的代码:
var errors: [string];
errors = [];
Object.keys(response.data.modelState).forEach(function (key) {
errors.push.apply(errors, response.data.modelState[key]);
});
Run Code Online (Sandbox Code Playgroud)
我尝试了一些不同的方法来为变量错误添加一个打字稿定义,但似乎没有一个适用于这种情况.第一个定义工作正常,但是当我推送值时,我需要推送到数组,当我设置时:
errors = [];
Run Code Online (Sandbox Code Playgroud)
然后它给我一个错误信息:
严重级代码说明项目文件行错误TS2322类型'undefined []'不能分配给'[string]'类型.'undefined []'类型中缺少属性'0'.严重级代码描述项目文件行错误构建:类型'undefined []'不能分配给'[string]'类型.
我有这行代码使 Typescript 引发错误:
const owner:boolean = jsonFile.owners.includes("10");
Run Code Online (Sandbox Code Playgroud)
jsonFile 是我所做的
const owner:boolean = jsonFile.owners.includes("10");
Run Code Online (Sandbox Code Playgroud)
业主是空的string[]。
这是错误:
Argument of type 'string' is not assignable to parameter of type 'never'.
Run Code Online (Sandbox Code Playgroud)
我知道我需要为该数组分配类型,例如 make it never[]-> string[],我该怎么做?最好不要strictNullChecks在 tsconfig 下(解决这个问题)