日期:2014-05-17  浏览次数:20311 次

js取最小值
有一组数:

var abc = "1|25;1|-2;2|23;2|-69"

用js如何取到,abc中,以|后绝对值最小的,前头的数.

-2绝对值最小,取前面的1

thanks.

------解决方案--------------------
var items = abc.split(';');
var index, min=null;
for(var i=0;i<items.length;i++){
    var kvp= items.split('
------解决方案--------------------
');
    var abs = Math.abs(parseInt(kvp[1]));
    if(min == null 
------解决方案--------------------
 min > abs) {
        min=abs;
        index = kvp[0];
    }
}

return index;
------解决方案--------------------
var abc = "1
------解决方案--------------------
25;1
------解决方案--------------------
-2;2
------解决方案--------------------
23;2
------解决方案--------------------
-69";

var aList=abc.split(';');

var aTemp=[];

for(var i=0;i<aList.length;i++)
{
    var tempValue=Math.abs(parseInt(aList[i].split('
------解决方案--------------------
')[1]));
    aTemp.push(tempValue);
}

Array.prototype.indexOf=function(value)
{
    for(var i=0;i<this.length;i++)
    {
        if(this[i]==value)
            return i;
    }
    return -1;
}
Array.prototype.min=function()
{
   return Math.min.apply({},this);
}
var index=aTemp.indexOf(aTemp.min());