gpt4 book ai didi

javascript - 对混合字符串和数值的列字段进行排序

转载 作者:行者123 更新时间:2023-11-29 21:14:12 24 4
gpt4 key购买 nike

我正在尝试根据“值”字段对我的列进行排序,该字段是按以下顺序组合的字符串和数值

var ascending = ["","","", 0, 0, 0.71, 1]

var descending = [1, 0.71,0,0,"","",""]

我尝试了下面的排序算法,但没有给出预期的结果

function mySort(v1,v2) {
var v1 = obj1[colName];
var v2 = obj2[colName];

if(v1 === ""){
return 1;
}
else if(v2 === ""){
return -1;
}
else if(v1 === v2){
return 0;
}
else if(!sortObj.descending) {
return v1 < v2 ? -1 : 1;
}
else if(sortObj.descending) {
return v1 < v2 ? 1 : -1;
}
}

上面的排序算法总是将 "" 放在底部,这在我的例子中是不希望的。我缺少什么?

最佳答案

var arr = ["", "", 0, "", 1, 0.71, 0];
var asc = arr.slice().sort();
var desc = asc.slice().reverse();

slice()方法将数组的一部分的浅拷贝返回到新的数组对象中。

sort()方法对数组的元素进行就地排序并返回数组。

reverse()方法原地反转数组。

关于javascript - 对混合字符串和数值的列字段进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40183743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com