小编sha*_*ove的帖子

编写此 JS reduce() 代码的更好方法?

下面的函数使用 reduce 函数简单地返回给定数组中的最小元素。但是,我很快意识到如果给定的数组为空,下面的代码会抛出一个 TypeError :

function findSmallestElement(arr) {
  return arr.reduce((a,b) => a < b ? a : b); //throws TypeError if arr is an empty array 
}
Run Code Online (Sandbox Code Playgroud)

所以我通过在reduce()方法之前加入一个快速的if语句来处理它,如下所示。我想知道,是否有更优雅/简洁的方法来做到这一点,因为如果数组为空,我必须返回 0?

function findSmallestElement(arr) {
  if (arr.length === 0) return 0;
  return arr.reduce((a,b) => a < b ? a : b);
}
Run Code Online (Sandbox Code Playgroud)

javascript

5
推荐指数
1
解决办法
79
查看次数

标签 统计

javascript ×1