【发布时间】:2020-04-25 08:27:44
【问题描述】:
问题
创建一个将两个参数相加的函数。如果只提供一个参数,则返回一个需要一个参数并返回总和的函数。
例如,addTogether(2, 3) 应该返回 5,addTogether(2) 应该返回一个函数。
使用单个参数调用此返回函数将返回总和:
var sumTwoAnd = addTogether(2);
sumTwoAnd(3) 返回 5。
如果任一参数不是有效数字,则返回 undefined。
我尝试了什么
function addTogether(a, b) {
if(typeof(a) !== 'number'){
return undefined;
}
if(arguments.length == 2){
let tim = arguments[0] + arguments[1];
if(!tim.isNaN){
return tim;
}
}
else if(arguments.length == 1){
return function(a, c){
let result = c + a;
if(!result.isNaN){
return result;
}
}
}
}
addTogether(2,3);
console.log(addTogether(2)([3]))
console.log(addTogether(2),(3))
以下 Console.logs 失败
addTogether(2)(3) 应该返回 5。
addTogether(2, "3") 应该返回 undefined。
addTogether(2)([3]) 应该返回 undefined。
我想知道什么
- 你们如何修复我的代码?
- 你会怎么做?
【问题讨论】:
标签: javascript algorithm arguments