我想按以下方式對值和文本進行排序選擇選項。 文本可以有特殊字符,需要排序。 但是我發現,一些特殊字符是在字母后面出現的。 我首先需要所有特殊字符,然後是字母。Javascript排序陣列
c = [["#test","#test"], ["?test", "?test"], ["test", "test"], ["TEst", "TEst"], ["]test", "]test"]]
>>> c.sort()
[["#test", "#test"], ["?test", "?test"], ["TEst", "TEst"], ["]test", "]test"], ["test", "test"]]
該問題似乎是'TEst'。
另一簡單示例:
cool = ['#new','?new','[new',']new','NEw','&new','cool','ind']
["#new", "?new", "[new", "]new", "NEw", "&new", "cool", "ind"]
cool.sort()
["#new", "&new", "?new", "NEw", "[new", "]new", "cool", "ind"]
在這個例子中,這並不從默認的排序在所有不同。我猜如果'a'和'b'都低於ASCII 49,那麼排序順序將是不確定的? – Stuart
@Stuart:顯然我給了OP一個*想法*如何改進他的代碼以達到預期的效果。由OP來改變比較功能以適應所有要求。 – zerkms
夠公平的,只是想檢查一下我沒有誤解你的代碼。 – Stuart