Ich muss viele Objekte in meiner Datenbank mit Mungo speichern. HierMongoose speichern Schleife Iterator verloren
ist ein Beispiel für meinen Code:
for (var i = 0; i < userdata.length; i++) {
var newCompany = Company({
name: userdata[i].company_name
});
newCompany.save(function(err, c) {
if (err) throw err;
var newGeoloc = Geolocation({
latitude: userdata[i].latitude,
longitude: userdata[i].longitude
});
newGeoloc.save(function(err, g) {
if (err) throw err;
// Create new Office
var newOffice = Office({
name : userdata[i].office_name,
address : userdata[i].address,
city : userdata[i].city,
zip_code : userdata[i].zip_code,
geolocation : g._id,
company : c._id
});
// Save the Office
newOffice.save(function(err, officeCreated) {
if (err) throw err;
console.log('Office created!');
});
});
}
Warum meine i
Variable, wenn ich spare das Geolocation-Objekt latitude: datas[i].latitude
bekam die maximale Länge meiner Array userdata.length
? Wenn z. B. userdata 150 Objekt hat, erhalte ich immer 150, wenn ich das Geolokationsobjekt erstelle.
Wie kann ich tun?
Mögliche Duplikate von [JavaScript-Abschluss in Schleifen - einfaches praktisches Beispiel] (http://stackoverflow.com/questions/750486/javascript-closure-inside-loops-simple-practical-example) – DAXaholic
Also muss ich nur verwenden Keyword lassen, damit es funktioniert? – John