Έχω την ανάγκη να προσθέσω ή να προθέσω στοιχεία στην αρχή ενός πίνακα.
Για παράδειγμα, αν ο πίνακας μου μοιάζει με τον παρακάτω:
[23, 45, 12, 67]
Και η απόκριση από την κλήση AJAX είναι 34
, θέλω ο ενημερωμένος πίνακας να έχει την ακόλουθη μορφή:
[34, 23, 45, 12, 67]
Προς το παρόν σχεδιάζω να το κάνω ως εξής: "Ο πίνακας θα πρέπει να είναι ο εξής:
var newArray = [];
newArray.push(response);
for (var i = 0; i < theArray.length; i++) {
newArray.push(theArray[i]);
}
theArray = newArray;
delete newArray;
Υπάρχει κάποιος καλύτερος τρόπος για να το κάνω αυτό; Έχει η Javascript κάποια ενσωματωμένη λειτουργικότητα που το κάνει αυτό;
Η πολυπλοκότητα της μεθόδου μου είναι O(n)
και θα ήταν πραγματικά ενδιαφέρον να δούμε καλύτερες υλοποιήσεις.
Χρησιμοποιήστε το [unshift
][1]. Είναι σαν το [push
][2], μόνο που προσθέτει στοιχεία στην αρχή του πίνακα αντί για το τέλος.
unshift
/push
- προσθήκη ενός στοιχείου στην αρχή/στο τέλος ενός πίνακαshift
/pop
- αφαίρεση και επιστροφή του πρώτου/τελευταίου στοιχείου ενός πίνακαΈνα απλό διάγραμμα...