2016-10-12 31 views
-2

例如,我有一些JSON數據,如下所示(JSON數據僅僅是一個示例,我只是想給出一些假的,組成和錯誤的格式JSON,因爲例如處理Json數據並將其傳遞給對象以供進一步使用

cata :[{ 
     name:test1, 
     data:['abc1, abc2' , 'abc3,abc4'] 
     } 
     name:test2, 
     data:['abc5, abc6' , 'abc7,abc8'] 
    }] 

事實上我需要呈現它的前端,所以我做了一個新的對象,並嘗試將數據推入它

var name = ""; 
var key= []; 
for(var i=0;i<2;i++){ 
    name .push(cata[i].name) 
    key.push(cata[i].data.join(' + ')); 
} 
var rehandle = { 
    name : name, 
    key : key 
    } 

以上就是我剛纔是怎麼做的,並沒有provi德慾望的結果,我想知道我怎麼能恢復它,這樣我可以從問題的

['abc5, abc6' , 'abc7,abc8'] 

abc5+abc6 , abc7+abc8 

更新版本的格式更改:

我想我更好地解釋一步一步:

  1. 我有一些原始數據

  2. 我有 「數據」 的行中的每一組數據的 (如:數據:[ 'ABC1,ABC2', 'ABC3,abc4']

  3. 我想改變它的格式ABC1 + ABC2,ABC3 + abc4並將其存儲到另一個可變

  4. 我將通過變量存儲ABC1 + ABC2,ABC3 + abc4到對象

5.Render一個一個表中的

更新2 我見過@丸的回答,我能夠呈現像

for(var i=0;i<cata.length;i++){ 
        var trythis = trythis + '<td>'+name[i]+'</td>' +    '<td>'+data[i]+'</td>' 
       } 
+0

老實說,我不知道你問這裏。你真的有問題嗎? – Phil

+0

所以基本上我想處理的數據,並把它們和對象,並將其呈現在表 – anson920520

+1

什麼阻止你這樣做?我的意思是什麼問題?你不知道如何訪問JSON的屬性? –

回答

1

的數據要格式化數據

['abc5, abc6' , 'abc7,abc8']

ABC5 + abc6,ABC7 + abc8

你只需使用

data.map(k => k.split(/,\s*/).join('+')).join(' , ') 

或ES5版本

data.map(function(k) { 
    return k.split(/,\s*/).join('+'); 
}).join(' , '); 

例如...

var cata = [{"name":"test1","data":["abc1, abc2","abc3,abc4"]},{"name":"test2","data":["abc5, abc6","abc7,abc8"]}]; 
 

 
var rehandle = cata.reduce(function(o, d) { 
 
    o.name.push(d.name); 
 
    o.key.push(d.data.map(function(k) { 
 
    return k.split(/,\s*/).join('+'); 
 
    }).join(' , ')); 
 
    return o; 
 
}, { 
 
    name: [], 
 
    key: [] 
 
}); 
 

 
console.log('rehandle:', rehandle);

注意,我不得不修復你的數據格式化

+0

我其實不需要用javascript創建表格。 – anson920520

+0

然後你需要改善你的問題 – Phil

+0

我已經更新了 – anson920520

相關問題