0

我在javascript中有一个“元组”列表,类似于[[1,2], [2,4], [3,5], [5,2], ..., [x, y]]我想找到第一个值的最小值,这样我就可以得到“元组”的两个值。所以在这种情况下,我会得到 value [1,2]。这似乎可以用apply函数完成,但我对 JavaScript 中的一些更精细的点(如apply函数)有些陌生。任何人都可以帮助我开始这样做吗?谢谢!

4

1 回答 1

1

正如 Sirko 所说,您可以通过一个简单的for循环来做到这一点,将每个第一个值与其前一个值进行比较。您也可以使用1数组方法来实现这一点,以实现更短的代码:reduce

var tuples = [[1,2], [2,4], [3,5], [5,2]];
var tupleWithMinFirstValue = tuples.reduce(function(previous, current){
    return current[0] < previous[0] ? current : previous;
}, [Infinity]);
console.log(tupleWithMinFirstValue);

http://jsfiddle.net/wAGMX/

1该链接还提供了兼容性信息和一个 polyfill。

于 2013-08-29T16:28:28.670 回答