Πώς μπορώ να προσθέσω ένα αντικείμενο σε έναν πίνακα (σε javascript ή jquery); Για παράδειγμα, ποιο είναι το πρόβλημα με αυτόν τον κώδικα;
function(){
var a = new array();
var b = new object();
a[0]=b;
}
Θα ήθελα να χρησιμοποιήσω αυτόν τον κώδικα για να αποθηκεύσω πολλά αντικείμενα στον πίνακα της συνάρτησης1 και να καλέσω τη συνάρτηση2 για να χρησιμοποιήσω το αντικείμενο στον πίνακα.
Τοποθετήστε οτιδήποτε σε έναν πίνακα χρησιμοποιώντας την Array.push().
var a=[], b={};
a.push(b);
// a[0] === b;
Επιπλέον πληροφορίες για τους πίνακες
Προσθέστε περισσότερα από ένα στοιχεία κάθε φορά
var x = ['a'];
x.push('b', 'c');
// x = ['a', 'b', 'c']
Προσθήκη στοιχείων στην αρχή ενός πίνακα
var x = ['c', 'd'];
x.unshift('a', 'b');
// x = ['a', 'b', 'c', 'd']
Προσθήκη των περιεχομένων ενός πίνακα σε έναν άλλο
var x = ['a', 'b', 'c'];
var y = ['d', 'e', 'f'];
x.push.apply(x, y);
// x = ['a', 'b', 'c', 'd', 'e', 'f']
// y = ['d', 'e', 'f'] (remains unchanged)
Δημιουργία νέου πίνακα από τα περιεχόμενα δύο πινάκων
var x = ['a', 'b', 'c'];
var y = ['d', 'e', 'f'];
var z = x.concat(y);
// x = ['a', 'b', 'c'] (remains unchanged)
// y = ['d', 'e', 'f'] (remains unchanged)
// z = ['a', 'b', 'c', 'd', 'e', 'f']
Πρώτα απ' όλα, δεν υπάρχει object
ή array
. Υπάρχουν Αντικείμενο
και Συστοιχία
. Δεύτερον, μπορείτε να το κάνετε αυτό:
a = new Array();
b = new Object();
a[0] = b;
Τώρα το a
θα είναι ένας πίνακας με μοναδικό στοιχείο το b
.
Το obejct
είναι σαφώς τυπογραφικό λάθος. Αλλά τόσο το object
όσο και το array
χρειάζονται κεφαλαία γράμματα.
Μπορείτε να χρησιμοποιήσετε σύντομους χαρακτήρες για new Array
και new Object
αυτοί είναι []
και {}
.
Μπορείτε να σπρώξετε δεδομένα στον πίνακα χρησιμοποιώντας το .push
. Αυτό το προσθέτει στο τέλος του πίνακα. ή μπορείτε να ορίσετε ένα δείκτη που θα περιέχει τα δεδομένα.
function saveToArray() {
var o = {};
o.foo = 42;
var arr = [];
arr.push(o);
return arr;
}
function other() {
var arr = saveToArray();
alert(arr[0]);
}
other();