如果我有對象像這樣的數組:排序在javascript - 忽略排序時相同的值
percentages_oparea
0:
name: test1
pvalue: 15
1:
name: test2
pvalue: 16
我可以在JavaScript這樣排序的:
percentages_oparea.sort(function(a, b) {
return parseFloat(b.pvalue) - parseFloat(a.pvalue);
});
,它正常工作:
percentages_oparea
0:
name: test2
pvalue: 16
1:
name: test1
pvalue: 15
如果b.value
是完全一樣的值a.value
我不想任何排序。如何實現這一目標?
我不知道爲什麼,但我得到這個結果(測試1和測試2交換索引)恰好具有在P值相同的值時:
0:
name: test2
pvalue: 15
1:
name: test1
pvalue: 15
但我想(什麼應該改變)
0:
name: test1
pvalue: 15
1:
name: test2
pvalue: 15
[輸入javascript](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)不是[stable](https:// en。 wikipedia.org/wiki/Sorting_algorithm#Stability)排序算法。所以它可能交換相同值的元素 – Liam
另請參見:[快速穩定的排序算法實現在JavaScript](http://stackoverflow.com/questions/1427608/fast-stable-sorting-algorithm-implementation-in-javascript) – Liam