How to create an array with random values with the help of JavaScript ? - GeeksforGeeks

31 Dec, 2019
The task is to generate an array with random values with the help of JavaScript. There are two approaches which are discussed below:
Approach 1:
Use Math.random() and Math.floor() method to get the random values.
Push the values one by one in the array (But this approach may generate repeated values).
Example: This example implements the above approach.
<!DOCTYPE HTML><html>  <head>    <title>        create an array with random values    </title></head>  <body style="text-align:center;">    <h1 style="color: green">          GeeksForGeeks      </h1>    <p id="GFG_UP"></p>    <button onclick="gfg_Run()">        Click Here    </button>    <p id="GFG_DOWN" style="color:green;"></p>      <script>        var el_up = document.getElementById("GFG_UP");        var el_down = document.getElementById("GFG_DOWN");        el_up.innerHTML =           "Click on the button to generate the array.";          function gfg_Run() {            el_down.innerHTML = Array.from({                length: 10            }, () => Math.floor(Math.random() * 10));        }    </script></body>  </html>
Output:
Before clicking on the button:
After clicking on the button:
Approach 2:
Create an array and put the values in it (like, 1 at index 0, 2 at index 1, 3 at index 2 in the same order by a loop.)
Assign variable (tp) = length of the array.
Run a loop on variable(tp).
Inside loop use Math.random() and Math.floor() method to get the random index of the array.
Swap this array value with the index(tp) and decrease the variable(tp) by 1.
Run the loop until variable(tp) becomes 0.
Example: This example implements the above approach.
<!DOCTYPE HTML><html>  <head>    <title>        create an array with random values.    </title></head>  <body style="text-align:center;">    <h1 style="color: green">          GeeksForGeeks      </h1>    <p id="GFG_UP"></p>    <button onclick="gfg_Run()">        Click Here    </button>    <p id="GFG_DOWN"        style="color:green;">    </p>    <script>        var el_up = document.getElementById("GFG_UP");        var el_down = document.getElementById("GFG_DOWN");        for (var a = [], i = 0; i < 10; ++i) a[i] = i;          // Array like[1, 2, 3, 4, ...]        el_up.innerHTML =           "Click on the button to generate the array.";          function createRandom(arr) {            var tmp, cur, tp = arr.length;            if (tp)                  // Run until tp becomes 0.                while (--tp) {                       // Generating the random index.                    cur = Math.floor(Math.random() * (tp + 1));                       // Getting the index(cur) value in variable(tmp).                    tmp = arr[cur];                       // Moving the index(tp) value to index(cur).                    arr[cur] = arr[tp];                       // Moving back the tmp value to                    // index(tp), Swaping is done.                    arr[tp] = tmp;                 }            return arr;        }          function gfg_Run() {            el_down.innerHTML = createRandom(a);        }    </script></body>  </html>
Output:
Before clicking on the button:
After clicking on the button:
JavaScript-Misc
JavaScript
Web Technologies
Web technologies Questions
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Remove elements from a JavaScript Array
Convert a string to an integer in JavaScript
Difference between var, let and const keywords in JavaScript
Differences between Functional Components and Class Components in React
How to append HTML code to a div using JavaScript ?
Remove elements from a JavaScript Array
Installation of Node.js on Linux
Convert a string to an integer in JavaScript
How to fetch data from an API in ReactJS ?
How to insert spaces/tabs in text using HTML/CSS?