我该如何在JavaScript数组中找到最大的数?

27 浏览
0 Comments

我该如何在JavaScript数组中找到最大的数?

我有一个简单的JavaScript数组对象,里面包含一些数字。

[267, 306, 108]

有没有一个函数可以在这个数组中找到最大的数字?

admin 更改状态以发布 2023年5月21日
0
0 Comments

你可以使用apply函数来调用Math.max

var array = [267, 306, 108];
var largest = Math.max.apply(Math, array); // 306

它是如何工作的?

apply函数用于调用另一个函数,并提供一个作为数组的给定上下文和参数。min和max函数可以接受任意数量的输入参数:Math.max(val1,val2,...,valN)

因此,如果我们调用:

Math.min.apply(Math, [1, 2, 3, 4]);

apply函数将执行:

Math.min(1, 2, 3, 4);

请注意,对于这些函数而言,第一个参数上下文并不重要,因为它们是静态的。无论传递什么作为上下文,它们都可以正常工作。

0
0 Comments

Resig 来解救:

Array.max = function( array ){
    return Math.max.apply( Math, array );
};

警告: 由于某些虚拟机上的最大参数数量只有65535, 如果不确定数组是否这么小,则使用for 循环

0