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

การสร้างจำนวนที่มากที่สุดจากอาร์เรย์ใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลขเป็นอาร์กิวเมนต์แรกและอาร์กิวเมนต์เดียว

ฟังก์ชันควรรวมตัวเลขที่มีอยู่ในอาร์เรย์เข้าด้วยกันเพื่อสร้างจำนวนที่มากที่สุดเท่าที่จะเป็นไปได้จากชุดตัวเลขที่ให้มา

ตัวอย่างเช่น −

หากอาร์เรย์อินพุตเป็น −

const arr = [5, 45, 34, 9, 3];

จากนั้นผลลัพธ์ควรเป็น −

const output = '9545343';

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr = [5, 45, 34, 9, 3];
const largestNumber = (arr = []) => {
   if(arr.every( n => n === 0)){
      return '0';
   }
   arr.sort((a, b) => {
      const s1 = new String(a);
      const s2 = new String(b);
      const first = s1 + s2;
      const second = s2 + s1;
      if(first > second){
         return -1;
      }else if(first < second){
         return 1;
      };
      return 0;
   });
   return arr.join('');
};
console.log(largestNumber(arr));

ผลลัพธ์

ต่อไปนี้เป็นเอาต์พุตคอนโซล -

9545343