使用 JavaScript 對包含一些重量值的一個數組進行排序


問題

我們要求編寫一個 JavaScript 函式,它接受一個由字串組成的陣列,其中包含帶有三個單位的重量:克 (G)、千克 (KG) 和噸 (T)。我們的函式應根據重量將陣列按從輕到重的順序排序。

我們要求編寫一個 JavaScript 函式,它接受一個由字串組成的陣列,其中包含帶有三個單位的重量:克 (G)、千克 (KG) 和噸 (T)。我們的函式應根據重量將陣列按從輕到重的順序排序。

示例

以下是該程式碼 −

 即時演示

const arr = ['1456G', '1KG', '.5T', '.005T', '78645G', '23KG'];
const arrangeWeights = (arr = []) => {
   const sorted=(w)=>{
      if(w.slice(-2) === 'KG'){
         return +w.slice(0,-2) * 1;
      }else if(w.slice(-1)==='T'){
         return +w.slice(0, -1)*1000
      }else{
         return +w.slice(0, -1)*0.001;
      };
   };
   return arr.sort((a, b) => sorted(a) - sorted(b));
};
console.log(arrangeWeights(arr));

輸出

[ '1KG', '1456G', '.005T', '23KG', '78645G', '.5T' ]

更新於: 2021-4-19

285 次瀏覽

開啟您的職業

完成課程後獲得認證

開始
廣告
© . All rights reserved.