任意のオブジェクトへの配列を(配列内の)プレーンJS(ライブラリなし)で解決するための再帰的アプローチのソリューションです。基本的に私はそれ自身に同じ機能を送りたいと思う。この時点で、私は最後の反復でオブジェクトを上書きします。 私が手:オブジェクトへの配列の配列再帰的にプレーンなJSで
{firstName: "Sallito", lastName: "Jordan", age: 16, role: "server"}
私が取得する必要がありながら:
[
{firstName: 'Eren', lastName: 'Duran', age: 22, role: 'admin'},
{firstName: 'Sallito', lastName: 'Jordan', age: 16, role: 'server'}
]
元の配列は次のとおりです。
var array = [
[
['firstName', 'Eren'], ['lastName', 'Duran'], ['age', 22], ['role', 'admin']
],
[
['firstName', 'Sallito'], ['lastName', 'Jordan'], ['age', 16], ['role', 'server']
]
];
私の現在のそれまで解決策がある:
function transformData(array) {
var obj = {};
for(var i = 0; i < array.length; i++){
for(var j = 0; j < array[i].length; j++){
for(var k = 0; k < array[i][j].length; k++){
if(k === 0){
var currentKey = array[i][j][k];
var currentValue = array[i][j][k + 1];
obj[currentKey] = currentValue;
}
}
}
}
return obj;
}
jを提供してください私はforEachとmap.reduceの方法でそれを行う方法を知っているので、再帰的なアイデアはありません。私は本当に再帰性を学びたいと思っています。ありがとう!
元のデータを追加してください。 –
..または再帰的な解決策がない場合...:objを上書きしないで新しいオブジェクトを古いものに配列に追加する方法は? –
ニーナは、すべてここにいます...期待された結果、私のコードと私は得る結果。 ['firstName'、 'Eren']、['lastName'、 'Duran']、['age'、22]、['role'、 'admin'] ] [ ] [ 'firstNameの'、 'Sallito']、[ 'lastNameの'、 'ヨルダン']、[ '年齢'、16]、[ '役割'、 'サーバー'] ] ] //申し訳ありません! –