干练的火柴 · rror creating bean ...· 1 月前 · |
打盹的领带 · 【java使用BufferedImage和G ...· 1 月前 · |
帅气的荔枝 · 创建并使用Shell节点_大数据开发治理平台 ...· 11 月前 · |
纯真的蚂蚁 · Python ...· 11 月前 · |
瘦瘦的饼干 · 使用python编程自动玩手游 - 知乎· 1 年前 · |
我在TypeScript中创建了一个简单的逻辑游戏,叫做“三个犯罪”。
当尝试在TypeScript中预分配类型化数组时,我尝试这样做:
var arr = Criminal[];
这给出了错误“检查表达式项的格式”。
我也尝试过这样做
var arr : Criminal = [];
这就产生了“无法将any[]转换为‘犯罪’”
做这件事的“TypeScript”方法是什么?
我知道这是一个老问题,但我最近遇到了一个类似的问题,不能用这种方式解决,因为我必须返回一个特定类型的空数组。
我有
return [];
其中
[]
是
Criminal[]
类型。
return: Criminal[] [];
和
return []: Criminal[];
都不适合我。
乍一看,我通过在返回之前创建一个类型化变量(正如 you 正确报告的那样)解决了这个问题,但是(我不知道JavaScript引擎是如何工作的)它可能会产生开销,而且可读性较差。
为了全面起见,我也会在我的答案中报告这个解决方案:
let temp: Criminal[] = [];
return temp;
最终,我发现了TypeScript类型转换,它使我能够以一种更简洁、更可读(可能也更高效)的方式解决这个问题:
return <Criminal[]>[];
希望这能对未来的读者有所帮助!
干练的火柴 · rror creating bean with name 'entityManagerFactory' defined in class path resource [org/springframew 1 月前 |
瘦瘦的饼干 · 使用python编程自动玩手游 - 知乎 1 年前 |