I myObj
zu tempMyObj
eine Kopie eines JavaScript-Objekt ändern verursachen das ursprüngliche Objekt
var tempMyObj = myObj;
tempMyObj.entity
kopierte zu ändern, ist ein Array von Objekten. Ich modifiziere tempMyObj.entity
basierend auf einigen Bedingungen. Das Problem ist, wenn ich ändern tempMyObj.entity
die myObj.entity
wird auch geändert.
for (j = 0; j < myObj.length; j++) {
if (myObj[j].type == "TableShape") {
var dupEntites = new Array();
for (i = 0; i < myObj[j].entities.length; i++) {
if (chk.value != myObj[j].entities[i].id) {
var obj = {};
obj.text = myObj[j].entities[i].text;
obj.id = myObj[j].entities[i].id;
dupEntites.push(obj);
}
else {
if (chk.checked)
{
var obj = {};
obj.text = myObj[j].entities[i].text;
obj.id = myObj[j].entities[i].id;
dupEntites.push(obj);
}
}
}
tempMyObj[j].entities = dupEntites;
}
}
können Sie Ihre Frage bearbeiten, um eine Frage zu stellen? – kamaradclimber
Dies könnte helfen, wenn Sie nicht jQuery verwenden: http://stackoverflow.com/questions/728360/most-elegant-way-to-clone-a-javascript-object – tomek550