Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ฟังก์ชันสร้างชื่อสุ่ม - JavaScript

ฟังก์ชันนี้สร้างสตริงสุ่มความยาว n ประกอบด้วยตัวอักษรภาษาอังกฤษพิมพ์เล็ก 26 ตัว

ตัวอย่างโค้ด

const num = 8;

const randomNameGenerator = num => {
  let res = '';
  for (let i = 0; i < num; i++) {
    // สุ่ม 0-26 แล้วบวก 97 (ASCII 'a')
    const random = Math.floor(Math.random() * 27);
    res += String.fromCharCode(97 + random);
  }
  return res;
};

console.log(randomNameGenerator(num));

ข้อผิดพลาดในโค้ดต้นฉบับ

Math.random() * 27 ให้ค่า 0-26.999... → Math.floor ให้ 0-26 (27 ค่า) แต่ตัวอักษร a-z มีแค่ 26 ตัว (97-122)

โค้ดที่ถูกต้อง

const randomNameGenerator = num => {
  let res = '';
  for (let i = 0; i < num; i++) {
    const random = Math.floor(Math.random() * 26); // 0-25
    res += String.fromCharCode(97 + random);
  }
  return res;
};

ผลลัพธ์ตัวอย่าง

kdcwping

หมายเหตุ: ผลลัพธ์จะต่างกันทุกครั้งที่รัน