Sehr oft, wenn ich ein Objekt in ein Array bin drängen, mag ich die Referenz auf das Objekt zu mir zurückgeschickt werden. Zum Beispiel:
// Returns object
function createAndAdd(arr) {
return arr[arr.length] = { id: 1 };
}
var obj = createAndAdd(arr);
Jetzt habe ich das neue Objekt und Ich habe es zu einem Array hinzugefügt. Wenn ich Push benutzt hätte, wäre mir die Länge des Arrays zurückgegeben worden. Es würde wie folgt aussehen:
function createAndAdd(arr) {
var obj = { id: 1 };
arr.push(obj);
return obj;
}
oder sogar hässliche, vor allem, wenn das Objekt bekommt groß:
function createAndAdd(arr) {
return arr[arr.push({ id: 1 }) -1];
}
Ich persönlich liebe Funktionen mit sofortigen return-Anweisungen. Hält es einfach und leicht zu sehen. Liebe die Frage. Danke, dass du es fragst.
Ich realisiere, dass ich nur ein Hobbyist bin, aber ich benutze 'push()', und jetzt habe ich das Gefühl, dass mir eine bisher geheime Kontraindikation für eine solche Verwendung fehlt ... –
Ich benutze es häufig, obwohl Ich bevorzuge einen Indexer, bei dem es logischer Sinn ist (wie eine For-Schleife). –
Leute denken manchmal, dass es schneller ist. Siehe [Warum ist array.push manchmal schneller als array \ [n \] = value?] (Http://stackoverflow.com/questions/614126/why-is-array-push-ometimes-faster-than-arrayn-value) und [Verwenden der Push-Methode oder. Länge beim Hinzufügen zum Array?] (http://StackOverflow.com/q/6772757/1048572) - Ergebnisse variieren so weit, dass es eigentlich irrelevant ist. Verwenden Sie, was besser zu verstehen ist. – Bergi