好的,我有一段代码按字母顺序对给出的名称进行排序。
然而,代码并没有按照我想要的方式处理小数。
它以以下方式对名称进行排序(我希望它以数字方式递增):
它会订购它:
- 苹果 - 1.0051
- 苹果 - 1.1071
- 苹果 - 11.1592
- 苹果 - 12.0692
- 苹果 - 12.1717
- APPLE - 2.0186 << 这显然应该在“APPLE - 1.1071”之后
- 苹果 - 21.1407
- 苹果 - 22.089
- 苹果 - 23.069
- 香蕉 - 1.0051
- 香蕉 - 1.1071
- 香蕉 - 11.1592
- 香蕉 - 12.0692
- 香蕉 - 12.1717
- BANANA - 2.0186 << 这显然应该在“BANANA - 1.1071”之后
- 香蕉 - 21.1407
- 香蕉 - 22.089
- 香蕉 - 23.069
这是我正在使用的代码。我不完全理解代码,因为它是我一直在使用的一个片段。
function(a, b){
var nameA=a.myname.toLowerCase(), nameB=b.myname.toLowerCase()
if (nameA < nameB) //sort string ascending
return -1
if (nameA > nameB)
return 1
return 0 //default return value (no sorting)
}
问候,强尼