在foreach Javascript中查找最大数值`

在foreach Javascript中查找最大数值`,javascript,angularjs,Javascript,Angularjs,好的,采取以下措施: 在javascript中,如何为每个值运行一个函数,为每个北方值收集最高值,为南方值收集最低值 好吧,我就这么说: function finder(cmp, arr, attr) { var val = arr[0][attr]; for (var i = 1; i < arr.length; i++) { val = cmp(val, arr[i][attr]); } return

好的,采取以下措施:

在javascript中,如何为每个值运行一个函数,为每个北方值收集最高值,为南方值收集最低值

好吧,我就这么说:

    function finder(cmp, arr, attr) {
       var val = arr[0][attr];
       for (var i = 1; i < arr.length; i++) {
           val = cmp(val, arr[i][attr]);
       }
       return val;
   }
函数查找器(cmp、arr、attr){
var-val=arr[0][attr];
对于(变量i=1;i
Angular有一个可爱的内置forEach功能:

var lowestFound = false;
var lowest = 0;

angular.forEach(values, function(value, key) {
  if (value < lowest || lowestFound === false) {
    lowest = value;
    lowestFound = true;
  }
});

return lowest;
var lowestFound=false;
var最低=0;
角度.forEach(值、函数(值、键){
如果(值<最低| |最低发现===false){
最低=数值;
lowestFound=true;
}
});
回报率最低;

不完美,但它应该可以工作。:)

试试看!PS:你意识到你试图做的不是一个可靠的方法来获得边界框吗?从这个答案我猜没有一个实际的方法来做它!有很多很好的方法可以做到这一点,比如说,
Math.min
/
Math.max
到目前为止,您尝试了什么算法?请注意,您只有字符串,您应该解析其中的数字,这是一种很好的方法!您还可以为同一函数中的最高值添加类似的代码(在所有函数上保存两次循环)。:)