สุ่ม string ใน JavaScript ด้วย Math.random
Nuttavut Thongjor
JavaScript

เรียนรู้การใช้ Math.random เพื่อสร้างการสุ่มค่า string ใน JavaScript

คำอธิบาย
ความคิดเห็น

เป็นที่ทราบกันดีว่า Math.random นั่นจะทำการสุ่มตัวเลขระหว่าง 0 ถึง 1 (ไม่รวม 1)

JavaScript
1Math.random(); // 0.9304232754242336

ชนิดข้อมูลของค่าที่คืนกลับจากฟังก์ชันคือ number เราจึงสามารถเรียกเมธอด toString จาก number ได้

JavaScript
1Math.random().toString(); // '0.9304232754242336'

เมธอด toString ของ number นั้นสามารถระบุเลขฐานระหว่าง 2 - 36 ผลลัพธ์ของการเรียกเช่นที่ว่าจะทำการแปลงตัวเลขตามเลขฐานที่เราระบุพร้อมคืนกลับเป็น string

JavaScript
1Math.random().toString(16); // '0.f9f2b780b4e57'

เพื่อให้เราได้จำนวนตัวอักษรมากขึ้นเราจึงใช้เลขฐาน 36

JavaScript
1Math.random().toString(36); // '0.0smndqo1v25c'

จากตัวอย่างผลลัพธ์เราไม่ต้องการเลข 0. เราจึงทำการต่อ string ด้วย slice(2)

JavaScript
1Math.random().toString(36).slice(2); // 'q4jae3iki7'

ทั้งหมดทั้งมวลจึงได้ว่าวิธีดังกล่าวคือการสุ่ม string นั่นเอง