我正在学习如何编程,我在编码课上收到了以下任务:
创建一个带参数的函数,如果没有数字为负,则返回true
我尝试使用以下代码执行此操作:
function allPositive(a) {
if(a > 0) {
return true
}
}
我尝试运行allPositive([4,3,2,1])
,但它没有返回true
。我该如何解决这个问题?
答案 0 :(得分:4)
如果不是正面(即负面),你会忘记归还。请尝试这种方式:
function allPositive(a){
if (a > 0) {
return true;
} else {
return false;
}
}
这个表达式可以用更优雅的方式编写,如下所示:
function allPositive(a){
return a > 0;
}
我认为,0
是一个正整数,因此,比较应该使用>=
代替。
回到最初的问题,该任务暗示有几个要检查的数字,即数字的数组。你应该查找loops迭代一个数组中的所有元素,并检查它们是正还是负。
天真的算法是检查每个元素,并且只要是负数,就返回false。如果你到达循环之外,这意味着所有都是正数,那么返回true。让我们看看你能想出什么! :)