How to Shuffle an Array in Javascript?

Share This Post

There are several methods to shuffle an array in JavaScript, and while picking a solution, you should always consider efficiency and unpredictability. The Fisher-Yates approach and the sort one-liner are the two solutions shown here. Both options have their own set of benefits and drawbacks, so you’ll have to pick which way is ideal for your project. In Javascript, here’s how to shuffle an array.

Solution 1: Fisher-Yates Array Shuffle


Solution 1: Fisher-Yates Array Shuffle

A popular array shuffling solution in Javascript is the Fisher-Yates shuffle. The concept here is simple:

  1. Start at the end of your array.
  2. Choose a random index within your array
  3. Swap the two values
  4. Repeat down your array until all indexes are swapped.

This approach will give you a lot of unpredictability, and although it’s quite efficient, the size of the array will affect its speed. Because we’ll need to create some code to do the shuffle, it’s ideal to place the algorithm in a reusable function, preferably in a utility file that you can use throughout your project.

The Fisher-Yates shuffle, named after its authors Ronald Fisher and Frank Yates, was originally described in 1938. The Knuth shuffle is another name for this technique.

 

Solution 2: Sort One Liner


Solution 2: Sort One Liner

This approach is popular because of its clarity and simplicity. It does, however, have several severe flaws. For big arrays, it is inefficient, and many items might be left unshuffled, resulting in poor overall randomization.

This technique should only be used on tiny arrays when a large proportion of randomization isn’t required.

These are just two examples of how to shuffle an array in Javascript.

Even though it has a larger syntactic payload, the first Fisher-Yates approach from these two possibilities is strongly recommended.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Related Posts

Meta to face a trademark lawsuit over its infinity-symbol logo

The rebranding or transformation of Facebook to Meta has...

45+ Happy Labor Day Wishes, Messages, Greetings and Quotes

Labor Day, also known as International Workers Day, is...

Android Users: How to add songs from Youtube Music to Snapchat

Snapchat has begun to roll out a feature that...

4 Easy ways to get unbanned from Omegle

If you enjoy chatting on the platform Omegle, you...

Fix “running as root without –no-sandbox” Error in Puppeteer

The Google Dev Team's Puppeteer is a strong tool...

Tips for enhancing the FaceTime call experience on iPhone, iPad, and Mac

With the introduction of iOS 15 and macOS Monterey...
spot_img
- Advertisement -spot_img