Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การจัดเรียงอาร์เรย์ที่มีค่าของน้ำหนักบางส่วนโดยใช้ 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' ]