我的函数返回undefined而不是3,我知道我可以使用: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/max
但是,我想首先尝试看看我是否可以在不使用本机功能的情况下这样做,因为我正在努力提高我作为开发人员的技能。
var my_max = function(arr){
var max=arr[0];
for (var i = 0; i < arr.length; i++){
if (arr[i] > max) {
max=arr[i];
}
}
return max;
};
console.log(my_max(1, 2, 3));
答案 0 :(得分:5)
那里没有阵列。你只是将三个数字传递给函数。您应该传递一个包含三个数字的数组:
console.log(my_max([1, 2, 3]));
或者,您可以在函数中使用rest参数,例如:
var my_max = function(...arr){
// ...
}
然后你可以在不使用数组的情况下调用它:
console.log(my_max(1, 2, 3));