gpt4 book ai didi

javascript - 从 JavaScript 数组中获取对象值的最大值和最小值

转载 作者:可可西里 更新时间:2023-11-01 02:54:06 29 4
gpt4 key购买 nike

从 JavaScript 对象数组中获取最大值和最小值的最佳方法是什么?

给定:

var a = [{x:1,y:0},{x:-1,y:10},{x:12,y:20},{x:61,y:10}];
var minX = Infinity, maxX = -Infinity;
for( var x in a ){
if( minX > a[x].x )
minX = a[x].x;
if( maxX < a[x].x )
maxX = a[x].x;
}

看起来有点笨拙。有没有更优雅的方式,也许使用 dojo?

最佳答案

它不会更有效率,但只是为了咧嘴一笑:

var minX = Math.min.apply(Math, a.map(function(val) { return val.x; }));
var maxX = Math.max.apply(Math, a.map(function(val) { return val.x; }));

或者如果您愿意使用三行代码:

var xVals = a.map(function(val) { return val.x; });
var minX = Math.min.apply(Math, xVals);
var maxX = Math.max.apply(Math, xVals);

关于javascript - 从 JavaScript 数组中获取对象值的最大值和最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18798568/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com