Oggi altra funzione che potrebbe tornare utile: mix() che mischia un array in modo casuale; non mi addentro sul significato di casuale, dico soltanto che crea un array aggiungendo ogni volta un elemento preso a caso dall’array originale.
Array.prototype.mix = function() {
var ret = new Array();
while (this[0]) {
ret.push(
this.splice(
parseInt(Math.random()*this.length),
1)[0]
)
}
while (ret[0]) {
this.push(ret.shift());
}
return this;
}
La funzione oltre che mischiare l’array lo restituisce, quindi potete subito agire sul risultato di mix().
Chiaramente è applicabile anche al di fuori di un array, basta che l’oggetto supporti push, pop e splice; inoltre con pochissimi cambiamenti potete renderla una funzione esterna, io preferisco però la programmazione ad oggetti e quindi la implemento come membro di una classe.
Non c’è molto altro da spiegare, viene sempre utile anche se avete una cosa da mischiare, per esempio un elenco di nomi (stringhe in generale). A me è servita proprio per mischiare un elenco di file, resi in array e poi mischiati ;)
Pingback: iphone 5 news
Pingback: Walkera Dragonfly
Pingback: Voodoo
Pingback: spy cameras
Pingback: casino games uk
Pingback: review of online casino
Pingback: friteuse sans huile
Pingback: image host
Pingback: Bridal Shower
Pingback: download free games
Pingback: Authentic Travel in Asia
Pingback: Cover iphone personalizzate
Pingback: how to make extra cash online internet now
Pingback: Dolce & Gabbana
Pingback: buy shopping online
Pingback: Oberschenkelstraffung
Pingback: Warehouse and showroom for sale Seven Hills
Pingback: pain treatment
Pingback: barginbids review
Pingback: consulta Tarot
Pingback: Cheap Car Insurance in Georgia
Pingback: Chat Box
Pingback: ray ban sonnenbrille wayfarer
Pingback: Herbal Incense Reviews
Pingback: crazy weaponr deal
Pingback: how to make extra cash
Pingback: glendale personal injury lawyer
Pingback: free online slots
Pingback: Design Contest
Pingback: site
Pingback: social networking
Pingback: igun Pro
Pingback: Saints Tickets
Pingback: single parenting
Pingback: Read more on Herbal Incense
Pingback: San Francisco SEO Company
Pingback: Free SEO Quote
Pingback: SEO Package
Pingback: Marketing SEO
Pingback: Google SEO
Pingback: Free SEO Analysis
Pingback: Minnesota SEO Company
Pingback: movers dc
Pingback: online games
Pingback: compensation claims
Pingback: personal injury
Pingback: personal injury
Pingback: personal injury
Pingback: www.personalcashadvance.com
Pingback: Injury Claims
Pingback: temperature logger
Pingback: gadget
Pingback: www.personalcashadvance.com
Pingback: Speed net
Pingback: autoloans.com
Pingback: Ashburn
Pingback: Tungsten Rings
Pingback: nz telephone directory
Pingback: Phil Cannella Complaints