此时函数确实返回第二大数,但我不确定它为什么不适用于负数?在函数中包含负数以查找数组中的第二大整数
function findSecondLargeNumber(arr) {
var firstLargeNum = 0,
secondLargeNum = 0;
for (var i = 0; i < arr.length; i++) {
if (firstLargeNum < arr[i]) {
secondLargeNum = firstLargeNum;
firstLargeNum = arr[i];
} else if (secondLargeNum < arr[i]) {
secondLargeNum = arr[i];
}
}
return secondLargeNum;
}
console.log(findSecondLargeNumber([1, 4, 5, 6])) //returns 5
console.log(findSecondLargeNumber([-1, -2])) //returns 0 not -1
???由于负数都小于零? – Pointy
将你的两个变量初始化为'Number.NEGATIVE_INFINITY',它应该可以工作。 – Pointy
@Pointy,但答案应该基于数组中的值...不是? –