สตริงควรจะมีตัวอักษร a-z ตามลำดับ แต่หายไป 1 ตัว ฟังก์ชันนี้หาตัวอักษรที่หายไป
ตัวอย่าง
// Input: 'acdghfbekj' (ควรเป็น a-k แต่หาย i) // Output: 'i'
ตัวอย่างโค้ด
const str = "acdghfbekj";
const missingCharacter = str => {
const s = str.toLowerCase();
// วนลูป ASCII code ของ a-z (97-122)
for (let i = 97; ; i++) {
const char = String.fromCharCode(i);
if (s.includes(char)) {
continue;
}
return char;
}
return false;
};
console.log(missingCharacter(str));
การทำงาน
- แปลงเป็นตัวพิมพ์เล็ก
- วนลูป ASCII 97 (a) ขึ้นไป
- ตรวจสอบด้วย
includes()ว่ามีในสตริงหรือไม่ - ตัวแรกที่ไม่มี → คืนค่านั้น
ผลลัพธ์
i
ข้อจำกัด: สมมติว่าสตริงมีตัวอักษรต่อเนื่องจาก 'a' และหายไปเพียง 1 ตัว