JavaScript函数如何在检测到参数为负数时返回ERROR错误
实现方案
你只需在函数核心逻辑执行前新增负数参数校验逻辑即可,只要检测到任意一个传入参数小于0,直接返回错误对象即可,修改后的代码如下:
const sumAll = function(num1,num2) { // 新增负数校验逻辑 if (num1 < 0 || num2 < 0) { return new Error('参数不能为负数'); } let newArr = [num1,num2]; let sortedArr = newArr.sort(function(a,b) { return a - b; }) let lastArr = [] for (let i = sortedArr[0]; i <= sortedArr[1]; ++i ) { lastArr.push(i) } let reducedArr = lastArr.reduce(function(previousValue,currentValue) { return previousValue + currentValue; }) return reducedArr; }; console.log(sumAll(1,-4)); // 此时输出结果为 Error: 参数不能为负数
补充说明
- 校验逻辑放在函数最开头优先级最高,只要
num1或num2任意一个值小于0,就会直接返回错误,不会执行后续的求和逻辑 - 如果你需要抛出错误终止程序运行而不是返回错误对象,可以把
return new Error('参数不能为负数')替换为throw new Error('参数不能为负数'),调用时需要搭配try...catch捕获异常
内容的提问来源于stack exchange,提问作者I.blue
相关产品推荐
相关产品推荐

