私はソフトウェアフィールドに新しいです。私はオブジェクトのjson配列を持っていますJSON配列データの1つの形式を別の形式に変換しますか?
var treeObj = [
{
"name": "sriram",
"refernce_id": "SAN001",
"sponer_id": "SAN000"
},
{
"name": "neeraja",
"refernce_id": "SAN002",
"sponer_id": "SAN001"
},
{
"name": "upender",
"refernce_id": "SAN003",
"sponer_id": "SAN001"
},
{
"name": "manoj",
"refernce_id": "SAN004",
"sponer_id": "SAN002"
},
{
"name": "shirisha",
"refernce_id": "SAN005",
"sponer_id": "SAN002"
},
{
"name": "ragu",
"refernce_id": "SAN006",
"sponer_id": "SAN003"
},
{
"name": "santhu",
"refernce_id": "SAN007",
"sponer_id": "SAN003"
}
];
ここで私は上記のオブジェクトを関数に渡します。その関数では、すべてのオブジェクトの参照IDとsponer_idを比較する必要があります。等しい場合は、以下のように子オブジェクトとして呼び出す配列にそれらをプッシュする必要があります。また、子配列で参照ID inが存在する場合、上記のオブジェクトのsponer_idに存在します。これは、それらをreference_idを含むオブジェクトに子配列にプッシュする必要があります。最終的な配列Objectは次のようになります。
[
{
"name": "sriram",
"parent": null,
"children": [
{
"name": "neeraja",
"parent": "sriram",
"children": [
{
"name": "manoj",
"parent": "neeraja"
},
{
"name": "shirisha",
"parent": "neeraja"
}
]
},
{
"name": "upender",
"parent": "sriram",
"children": [
{
"name": "ragu",
"parent": "neeraja"
},
{
"name": "santhu",
"parent": "neeraja"
}
]
}
]
}
]
ここで、treeObjのsriramの参照IDは、neerajaおよびupenderオブジェクトのスポンサーIDとして存在します。 neerajaとupenderは子供になってsriramになります。 neerajaのreference_idはtreeObjのmanojおよびshirishaオブジェクトにsponer_idとして存在します。同時に子はもっと多くの子オブジェクトを持つことができ、オブジェクトを動的にフォーマットする必要があります。
私が間違っていたところ私を導いてください
var mainArr = [], subArrs = [], subObj={}, subIds = [], find = "SAN001";
formatData(treeObj);
function formatData(treeObj){debugger;
var arr = [];
for(var x=0; x<= treeObj.length-1; x++){debugger;
var sampData = treeObj[x];
if(find == sampData.sponer_id){
arr.push(sampData.refernce_id);
subArrs.push(sampData);
}
}
subIds.push(arr);
console.log(subIds);
console.log(subArrs);
formatData(subArrs);
}
のようなルックスを書いた機能。前もって感謝します。
'Java'は' JavaScript'ではありません – Smit