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

JavaScript นับตัวอักษรซ้ำ


สมมุติว่าเรามีสตริงแบบนี้ −

const str = 'aabbcde';

ในที่นี้ เรามี 2a, 2b's 1c 1d และ 1e

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

ดังนั้น สำหรับสตริงข้างต้น ผลลัพธ์ควรมีลักษณะดังนี้ −

const output = '2a2b1c1d1e';

ตัวอย่าง

const str = 'aabbcde';
const repeatLetter = (str = '') => {
   const strArr = str.split("").sort();
   let count = 1;
   let i = 1;
   let res = '';
   while (i < strArr.length) {
      if (strArr[i - 1] === strArr[i]) { count++; }
      else {
         res += count + strArr[i - 1];
         count = 1;
      };
      i++;
   };
   res += count + strArr[i - 1];
   return res;
};
console.log(repeatLetter(str));

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

2a2b1c1d1e