我有一些代码可以按字母顺序对名称进行排序。
我遇到的问题是它处理小数的方式。
它订购如下名称(我宁愿它以数字递增):
DOG - 1.0510
DOG - 1.1031
DOG - 11.1792
DOG - 12.0920
DOG - 12.1170
DOG - 2.0186 <-- should be after "DOG - 12.117" ???
DOG - 21.4070
DOG - 22.0790
DOG - 23.0390
CAT - 1.0810
CAT - 1.1071
CAT - 11.1592
CAT - 12.0691
CAT - 12.1718
CAT - 2.0186 <-- again should be after "CAT -12.1718" ???
CAT - 21.1403
CAT - 22.081
CAT - 23.069
我在对象数组中有名称/值,如下所示:
var array = [
{
"myname":"DOG",
"value":1.0051
},
{
"myname":"DOG",
"value":1.1071
}
];
这是我从网上找到的片段中使用的代码。
function(x, y){
var xName=x.myname.toLowerCase(), yName=y.myname.toLowerCase()
if (xName < yName) //string sort ascending
return -1
if (xName < yName)
return 1
return 0 //return default value (without sorting)
}