将函数 reduce 应用到空数组时出现问题
issue when applying function reduce to empty array
typescript 编译器不会用以下代码标记任何错误。
const numbers: number[] = [];
const sum: number = numbers.reduce((a, num) => (a + num));
但是在执行转置代码的时候,nodejsreturns出现如下异常
TypeError: Reduce of empty array with no initial value
我认为这会导致许多运行时错误,也许打字稿应该建议我在使用 reduce 函数之前检查数组是否不为空。
const numbers: number[] = [];
const sum: number = numbers.length > 0 ? numbers.reduce((a, num) => (a + num)) : 0;
我应该将其报告为问题吗?
我怀疑没有人会改变这一点。 Typescript 编译器只对您是否正确实例化数组感兴趣。
你做到了。
Java,例如,做同样的事情。只要一个变量被正确地实例化,它是否有内容由程序员自己负责。
typescript 编译器不会用以下代码标记任何错误。
const numbers: number[] = [];
const sum: number = numbers.reduce((a, num) => (a + num));
但是在执行转置代码的时候,nodejsreturns出现如下异常
TypeError: Reduce of empty array with no initial value
我认为这会导致许多运行时错误,也许打字稿应该建议我在使用 reduce 函数之前检查数组是否不为空。
const numbers: number[] = [];
const sum: number = numbers.length > 0 ? numbers.reduce((a, num) => (a + num)) : 0;
我应该将其报告为问题吗?
我怀疑没有人会改变这一点。 Typescript 编译器只对您是否正确实例化数组感兴趣。
你做到了。
Java,例如,做同样的事情。只要一个变量被正确地实例化,它是否有内容由程序员自己负责。