La xaliyay: sida si aan kala sooc lahayn loo kala saaro javascript array

Dhibaatada ugu weyn ee si bakhtiyaa nasiib ah u kala soocida shaxanka ayaa ah inay waqti badan qaadan karto.

 arrays sorting random

I have an array of objects that I need to randomly sort.  The objects have a property called "order" that is a number.  I need to sort the array so that the order property is in random order, but the other properties of each object stay in place.  How can I do this?


A:

You can use <code>sort</code> with a function that returns a random value:


<code>const arr = [
  { id: 1, name: 'foo' },
  { id: 2, name: 'bar' },
];
arr.sort(() =&gt; Math.random() - 0.5);
console.log(arr);</code>



Habayn iyo kala sooci hawlaha

Array waa xog ururin oo lagu geli karo iyadoo la isticmaalayo nambar index. Cutubka ugu horreeya ee shaxdu waa index 0, qaybta labaadna waa index 1, iyo wixii la mid ah. Si aad u gasho curiyaha saddexaad ee shaxda, waxaad isticmaali doontaa tusaha lambarka 3.

Si aad u kala soocdo array, waxaad isticmaali kartaa shaqo kala saarid. Shaqada kala soocida waxay qaadataa laba doodood: habayn iyo shaqo isbarbardhig. Shaqada isbarbardhigga waxay is barbardhigtaa laba walxood oo ku jira shaxanka waxayna soo celisaa qiimaha boolean. Haddii shaqada isbarbardhigga ay soo noqoto run, markaas curiyaha ku yaal booska x ee shaxanka ayaa la hor marin doonaa curiyaha booska y ee arrayga. Haddii shaqada isbarbardhigga ay soo noqoto been been ah, ka dib curiyaha ku yaal booska x inthearray waxa la dhigayaa qaybta dambe ee booska y.

Waa kuwan tusaale sida loo isticmaalo kala-soocidda shaqada si loo kala saaro tirooyin kala duwan:

tirooyinka var = [1, 2, 3, 4]; // Kala sooc nambarada adigoo isticmaalaya shaqo isbarbardhig var sortedNumbers = tirooyin .soocida (shaqo(a, b) {soo celinta a - b; }); // Daabici kala soocida Numbers console .log(lambarada kala soocay);

Habayn random

Array waa xog ururin oo lagu geli karo iyadoo la isticmaalayo nambar index. JavaScript dhexdeeda, arrays ayaa lagu sameeyay iyadoo la isticmaalayo dhisaha Array.

Si aad u abuurto array madhan, isticmaal Array() dhisaha:

var myArray = Array cusub ();

Si aad u abuurto array ka kooban shan walxood, isticmaal koodka soo socda:

var myArray = Array cusub (5);

myArray[0] = "JavaScript"; myArray[1] = "Arrays"; myArray[2] = "Functions"; myArray[3] = "Xadhkaha"; myArray[4] = "Booleans"; myArray[5] = "Tirooyinka";

Related posts:

Leave a Comment