Grundlagen:
Kopieren Sie das Array:
(1) Schleifentraversalkopie (nicht empfohlen)
Die Codekopie lautet wie folgt:
var arr = [1,5,9,7],
new_arry = [],
n = 0,,
len = arr.length;
für (; n <len; n ++) {
new_arry.push (arry [n]);
}
(2) Die concat () -Methode wird verwendet, um zwei oder mehr Arrays zu verkettet. Diese Methode ändert das vorhandene Array nicht, sondern gibt nur eine Kopie des angeschlossenen Arrays zurück.
Die Codekopie lautet wie folgt:
var arr = [1,5,9,7],
new_arry = arry.concat ();
console.log (new_arry);
(3) Die Methode Slice () kann das ausgewählte Element aus dem vorhandenen Array zurückgeben
Die Codekopie lautet wie folgt:
var arr = [1,5,9,7],
new_arry = arry.slice (0);
console.log (new_arry);
Zufallszahl:
Math.random ()
Math.random () gibt eine Zufallszahl von 0 bis 1 zurück, wie: 0,4261967441998422
Persönliche Kapselungsfunktion:
Die Codekopie lautet wie folgt:
Funktion getrandom (opt) {
var old_arry = opt.arry,
Bereich = opt.Range;
// verhindern die Länge des Arrays ab
Bereich = Bereich> old_arry.length? old_arry.length: Bereich;
var newarray = [] .concat (old_arry), // kopieren Sie das ursprüngliche Array und betreiben Sie es werden das ursprüngliche Array nicht zerstören
valarray = [];
für (var n = 0; n <Bereich; n ++) {
var r = math.floor (math.random () * (newArray.length));
Valarray.push (Newarray [R]);
// Löschen Sie das ursprüngliche Array und vermeiden Sie dann die wiederholte Erwerb in der nächsten Schleife
newarray.splice (r, 1);
}
Return Valarray;
}
var new_val = getRandom ({'arry': [1,6,8,0,3], 'range': 3});
console.log (new_val);
Ist es sehr nützlich? Sehr praktischer Code. Hier ist ein separates Projekt von meinem eigenen Projekt und ich hoffe, es wird Ihnen hilfreich sein.