私は以下のことに助けが必要です。 配列を複製し、値を更新して新しいオブジェクトに挿入する必要があります。オブジェクト内に配列を複製し、キーに基づいて値を更新する - JavaScript
私のコード今:
// Sample test values {name:'The initial value', altName:'a first Name;a second name'}
var allAltName = test.altName;//Test come from a forEach() Iteration
if (test.altName) {//First I check if ther is my parama altName
var b,
countAllAltName = allAltName.split(';'); //Here I split my parameter string based on ';'
if (countAllAltName.length > 0) {
for (b = 0; b < countAllAltName.length; b = b + 1) {
var originalName = {};//I create a new object
originalName = test;//I load my existing object into a blank object
if (!ret["Index"]) // I check if my final object Key exist
ret["Index"] = {}; // if not create new object
if (!ret["Index"]["Index"]) // check another key
ret["Index"]["Index"] = []; // if not create new
originalName.name = countAllAltName[b];//Update my new object originalName with new value
ret["Index"]["Index"].push(originalName); // push current element in the designated list
ret["Index"]["Index"].sort(function (a, b) {
return a.name.localeCompare(b.name);
});
console.log(ret);
}
}
}
問題はret
で必要なオブジェクト・キーが含まれますが、各ARAYでname
のすべての値は、(私がCONSOLE.LOG altName
の同じ最後の値を持つ)各ステップでoriginalName
の値は何時も良いと思います。 最終結果が失敗した理由、およびデータを上書きする理由。
生データと必要な結果を追加してください。 –