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

วิธีสับเปลี่ยนอาร์เรย์แบบสุ่มใน JavaScript

_.shuffle()

_.shuffle() จาก underscore.js ใช้สับเปลี่ยนอาร์เรย์แบบสุ่มด้วยอัลกอริทึม Fisher-Yates shuffle แต่ละครั้งที่รันจะได้ผลลัพธ์ต่างกัน

ไวยากรณ์

_.shuffle(array);

ตัวอย่าง อาร์เรย์สตริง

<html> <body> 
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/0.10.0/lodash.min.js"></script> 
<script> 
    document.write(_.shuffle(["raj", "pankaj", "rahim", "rachel", "Balakrishna"])); 
</script> </body> </html>

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

rahim,Balakrishna,pankaj,raj,rachel

ตัวอย่าง อาร์เรย์ของออบเจ็กต์

<html> <body> 
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/0.10.0/lodash.min.js"></script> 
<script> 
    var people = [ 
        {"name": "Ram", "age": 27}, 
        {"name": "Rahim", "age": 28}, 
        {"name": "Rakul", "age": 29}, 
        {"name": "Rohti", "age": 21} 
    ]; 
    document.write(JSON.stringify(_.shuffle(people, 'age'))); 
</script> </body> </html>

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

[{"name":"Rahim","age":28},{"name":"Rakul","age":29},{"name":"Ram","age":27},{"name":"Rohti","age":21}]