javascript数字字符串反向排序不';我不能正常工作
我有一个数组javascript数字字符串反向排序不';我不能正常工作,javascript,arrays,string,sorting,numeric,Javascript,Arrays,String,Sorting,Numeric,我有一个数组[“4”、“2”、“5”、“3”],为什么排序功能工作正常,而不是相反的功能 ["4", "2", "5", "3"].sort(); //gives me ["2", "3", "4", "5"] ["4", "2", "5", "3"].reverse(); //gives me ["3", "5", "2", "4"] 从 reverse()。第一个数组元素变为最后一个,最后一个数组元素变为第一个 它只是反转给定的数组,与排序无关。您可以执行array.sort().rev
[“4”、“2”、“5”、“3”]
,为什么排序功能工作正常,而不是相反的功能
["4", "2", "5", "3"].sort(); //gives me ["2", "3", "4", "5"]
["4", "2", "5", "3"].reverse(); //gives me ["3", "5", "2", "4"]
从
reverse()。第一个数组元素变为最后一个,最后一个数组元素变为第一个
它只是反转给定的数组,与排序无关。您可以执行array.sort().reverse()
顺便说一句,[“4”、“2”、“5”、“3”].sort()
按词汇对数组进行排序
console.log(
[“4”、“2”、“5”、“40”、“3”].sort()/[“2”、“3”、“4”、“40”、“5”]
)
使用如下排序功能反转:
console.log([“4”、“2”、“5”、“3”].sort().reverse())
您需要sort().reverse()
(反向反向,不排序)reverse
和sort
不是别名,它们是不同的附加说明:请记住,字符串和数字的排序方式不同“11”<“9”=真
和11<9=假
。您在(a,b)=>a-b
为asc
时将排序函数标记错误。在对数组进行排序之前,我会复制一份Array.slice().sort(…)
,否则console.log将只显示最后一次排序。@Thomas谢谢。做了两个独立的日志