我有這個數組:sampleArray = [ {name: 'product-2'}, {name: 'product-15'}, {name: 'product-3'}, {name: 'product-10'}]我想使用 property 對其進行排序name,按字母順序排列,但字符串中的數字除外。我正在sort結合使用localeCompare:sampleArray.sort((a, b) => a.name.localeCompare(b.name))但是,就像name一個包含數字的字符串一樣,我得到了這個:sampleArray = [ {name: 'product-10'}, {name: 'product-15'}, {name: 'product-2'}, {name: 'product-3'}]考慮到數字,我需要以正確的順序獲取它。這會是什么:sampleArray = [ {name: 'product-2'}, {name: 'product-3'}, {name: 'product-10'}, {name: 'product-15'}]我知道如果我只處理數字我可以這樣做:sampleArray.sort((a,b) => a - b)但事實并非如此。我該如何解決這個問題?
除數字外,如何按字母順序對對象數組進行排序?
滄海一幻覺
2023-03-10 15:20:18