typescript - 在 for of 循环中强制转换声明变量

标签 typescript casting typescript-typings

是否有在“for of”循环内转换声明变量的更短和简化的版本。

let array1: Array<String | Number>;
for (let a of array1) {
    let ab: String = <String>a;
}

我知道强制转换整个数组会起作用,但是如果我可以强制转换或设置声明变量“a”的数据类型而不是强制转换整个数组,我会感到更高兴,这样的事情可能吗? 如果我输入 let <String>alet a:String它不起作用。

最佳答案

引用 TypeScript casting arrays

let array1 : Array<string | number> = [];
array1.push('abc', 9, 'def', 10);
for (let a of  array1 as Array<string> ){
  console.log(a);
}

关于typescript - 在 for of 循环中强制转换声明变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44223719/

相关文章:

c++ - 在派生类中调用模板基类的cast操作符

即使在添加类型定义文件后,Typescript Intellisense 甚至无法在 VS 代码中工作

javascript - 如何删除嵌套的 JSON.stringify() 属性

c# - 以下数字赋值是否会导致 C# 中的隐式强制转换?

javascript - Aurelia 激活函数永远不会被调用

c - 在 C 语言中,如果我强制转换和取消引用一个指针,我先做哪一个有关系吗?

javascript - 使用 Webpack 为其他项目编译 typescript

typescript - 打字中的环境依赖性和常规依赖性之间有什么区别

javascript - 类型为 void 的函数不能分配给类型 Observable<any>

javascript - 错误 : property 'subscribe' does not exist on type 'OperatorFunction<{}, {} |可观察<任意>>