Yogesh Chauhan's Blog

How to Sort (Shuffle) an Array in Random Order in JavaScript?

in JavaScript on August 12, 2020

Solution 1


var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return 0.5 - Math.random()});
// [ 1, 100, 40, 10, 25, 5 ]

points.sort(function(a, b){return 0.5 - Math.random()});
// [ 5, 1, 25, 100, 10, 40 ]

...
...

Solution 2


var points = [40, 100, 1, 5, 25, 10];
var i, j, k;
for (i = points.length - 1; i > 0; i--) {
  j = Math.floor(Math.random() * i);
  k = points[i];
  points[i] = points[j];
  points[j] = k;
}
console.log(points);
// [ 10, 40, 100, 1, 5, 25 ]

console.log(points);
// [ 10, 40, 25, 100, 5, 1 ]

...
...

Make a function..


var points = [40, 100, 1, 5, 25, 10];
function myFunction() {
var i, j, k;
  for (i = points.length -1; i > 0; i--) {
    j = Math.floor(Math.random() * i)
    k = points[i]
    points[i] = points[j]
    points[j] = k
  }
  console.log(points) ;
}
myFunction();
// [ 10, 5, 25, 1, 40, 100 ]

myFunction();
// [ 1, 25, 100, 10, 5, 40 ]

Solution 3


function shuffle(array) {
  var currentIndex = array.length, temporaryValue, randomIndex
  // While there remain elements to shuffle...
  while (0 !== currentIndex) {
    // Pick a remaining element...
    randomIndex = Math.floor(Math.random() * currentIndex);
    currentIndex -= 1;
    // And swap it with the current element.
    temporaryValue = array[currentIndex];
    array[currentIndex] = array[randomIndex];
    array[randomIndex] = temporaryValue;
  }
  return array;
}

var points = [40, 100, 1, 5, 25, 10];
shuffle(points);

console.log(points);
// [ 40, 100, 5, 10, 1, 25 ]

console.log(points);
[ 40, 1, 5, 10, 100, 25 ]

Sources


Most Read

#1 Solution to the error “Visual Studio Code can’t be opened because Apple cannot check it for malicious software” #2 How to add Read More Read Less Button using JavaScript? #3 How to check if radio button is checked or not using JavaScript? #4 Solution to “TypeError: ‘x’ is not iterable” in Angular 9 #5 How to uninstall Cocoapods from the Mac OS? #6 PHP Login System using PDO Part 1: Create User Registration Page

Recently Posted

#Apr 8 JSON.stringify() in JavaScript #Apr 7 Middleware in NextJS #Jan 17 4 advanced ways to search Colleague #Jan 16 Colleague UI Basics: The Search Area #Jan 16 Colleague UI Basics: The Context Area #Jan 16 Colleague UI Basics: Accessing the user interface
You might also like these
How to create a Recent Posts function in WordPress?WordPressMicroservices vs Monolithic ArchitectureMiscellaneous3 Types of Arrays in PHPPHPWhy do we need HAVING Clause in SQL?SQL/MySQLCONCAT and CONCAT_WS Functions in PostgresPostgresPre-defined DatePipe format options in Angular 9Angular