Underscore.js es una biblioteca de JavaScript que proporciona muchas funciones útiles que ayudan en la programación en gran medida, como el mapa, el filtro, la invocación, etc., incluso sin utilizar ningún objeto integrado.
La función _.shuffle() se utiliza para organizar una lista de arrays de forma aleatoria. Esta función de subrayado _.shuffle() utiliza Fisher Yates Shuffle , que se analiza en el artículo mencionado a continuación. Entonces, cada vez que usemos esto, la salida de esta función será diferente de acuerdo con Fisher Yates Shuffle.
Sintaxis:
_.shuffle(list)
Parámetros: esta función acepta Lista de parámetros individuales . Este parámetro se utiliza para contener la lista de elementos que se mezclarán.
Valores devueltos: el valor devuelto es la nueva array aleatoria que contiene todos los elementos que están en la array original que se pasó a la función _.shuffle().
Pasar una array numérica a la función _.shuffle(): La función ._shuffle() toma el elemento de la lista uno por uno y realiza las operaciones especificadas de acuerdo con Fisher Yates Shuffle. Luego, console.log() la respuesta final que contendrá todos los elementos de la array original en el problema aleatorio.
Ejemplo:
<html> <head> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" > </script> </head> <body> <script type="text/javascript"> console.log(_.shuffle(_.shuffle([1, 2, 3, 4, 5, 6]))); </script> </body> </html>
Producción:
Pasar una estructura a la función _.shuffle(): Pasar una estructura a la función _.shuffle(). Primero declare la array como aquí, la array es ‘objetivo’ y luego pase esta array a la función _.shuffle(). Los elementos de la array ‘objetivo’ se mezclarán junto con todas sus propiedades.
Ejemplo:
<html> <head> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" > </script> </head> <body> <script type="text/javascript"> var goal = [ { "category" : "other", "title" : "harry University", "value" : 50000, "id":"1" }, { "category" : "traveling", "title" : "tommy University", "value" : 50000, "id":"2" }, { "category" : "education", "title" : "jerry University", "value" : 50000, "id":"3" }, { "category" : "business", "title" : "Charlie University", "value" : 50000, "id":"4" } ] console.log(_.shuffle(goal)); </script> </body> </html>
Producción:
Pasar una lista con una propiedad como verdadero/falso a la función _.shuffle(): Primero declara la array (aquí la array es ‘personas’). Elija una condición en la que necesite verificar como aquí ‘hasLongHairs’. Console.log la respuesta final. La respuesta final será una array aleatoria ya que Fisher Yates Shuffle utiliza una función aleatoria en su algoritmo.
Ejemplo:
<html> <head> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" > </script> </head> <body> <script type="text/javascript"> var people = [ {"name": "sakshi", "hasLong": "false"}, {"name": "aishwarya", "hasLong": "true"}, {"name": "akansha", "hasLong": "true"}, {"name": "preeti", "hasLong": "true"} ] console.log(_.shuffle(people, 'name')); </script> </body> </html>
Producción:
Declarar una array y luego pasarla a la función _.shuffle(): Declarar una array let ‘users’ con una propiedad como ‘num’ y luego pasarla a la función _.shuffle(). Luego, console.log la nueva array aleatoria. El resultado será diferente cada vez que lo ejecute.
Ejemplo:
<html> <head> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" > </script> </head> <body> <script type="text/javascript"> var users = [{"num":"1"}, {"num":"2"}, {"num":"3"}, {"num":"4"}, {"num":"5"}]; console.log(_.shuffle(users, 'id')); </script> </body> </html>
Producción: