JavaScript Ninja的秘密中有一个示例,它提供了以下代码来绕过 JavaScript 的Math.min()
函数,该函数需要一个可变长度的列表。
Example: Math.min(1,2,3,4,5);
但是,如果你有一个问题list: [1,2,3,4,5]
,因为你宁愿不必遍历列表,跟踪当前的最小值。
书中说使用以下代码来解决这个问题。
function smallest(arr) {
return Math.min.apply(Math, arr);
}
alert(smallest([1,2,3,4,5,6,-33]));
Math.min.apply(Math, arr)
引擎盖下会发生什么?