js数据的处理,对比大小等

img


当这个里面没有3位数时,一切都正常

img


当有了时

img


还是那样
1.

img


怎么回事

把字符串改为number类型

把字符串转下数字再对比
可以用这些方法: Number(),parseInt()等等

 
let hj = [{'nam':'10'},{"nam":"128"},{'nam':'5'},{'nam':'99'},{'nam':'98'}];
let max = Number(hj[0].nam);
    
    for(var i = 0;i<hj.length;i++){
        if(max < Number(hj[i].nam)){
            max = Number(hj[i].nam);
        }
    }
    console.log(max)

一个非常简单的方式,先降序,再取第一个

hj.sort((a,b)=>{
  return Number(b.nam) - Number(a.nam)
})
let maxVal = list[0].nam

因为你比较的是字符串,应该转成数字再比较

console.log一下,而且你这没有三位数也不正常吧,那还有个99呢


var hj = [{'nam':'10'},{"nam":"128"},{'nam':'5'},{'nam':'99'},{'nam':'98'}];
    let max = parseInt(hj[0].nam);
    
    for(var i = 0;i<hj.length;i++){
        if(max < parseInt(hj[i].nam)){
            max = parseInt(hj[i].nam);
        }
    }
    
    console.log(max)