2
我只需要將多維JSON切換到單個,以提供它爲js插件創建表。多維JSON到單個的
這裏有響應的例子:
[
{
"services": [],
"id": 1,
},
{
"services": [
{
"status": {
...
},
"name": "NAME"
},
{
"status": {
...
},
"name": "NAME 2"
}
],
"id": 2
}
]
我找什麼:
[
{
"services": [],
"id": 1,
},
{
"service": {name: 'NAME', status: '' ...},
"id": 2,
},
{
"service": {name: 'NAME 2', status: '' ...},
"id": 2,
}
...
]
的想法是創建具有相同ID的條目的新陣,只有一個服務。
這裏有一個循環:
function parseData(json) {
var newArray = [];
for (i = 0; i < json.length; i++){
var item = json[i];
if (item.services.length > 0) {
for (j = 0; j < item.services.length; j++){
item['service'] = item.services[j];
newArray.push(item);
}
}
else {
newArray.push(item);
}
}
return newArray;
}
最後,而不是用不同的單服務進入兩個對象我得到兩個對象具有相同的「服務」項。這個循環有什麼問題?
這裏的jsfiddle:https://jsfiddle.net/ghea33x1/
謝謝。
好,看起來不錯,但如果JSON響應包含什麼對象的屬性未知數量?添加手動新屬性推方法'{服務:b,id:a.id,new_property:'價值'}'我認爲不是好主意。 – TheUser
然後您需要遍歷這些屬性或使用[Object.assign](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) –
Nice,just added小修正https://jsfiddle.net/ghea33x1/1/ 救命恩,btw :) – TheUser