2017-02-10 31 views
-2

有什麼方法可以對這個對象數組進行排序嗎? :通過在鍵和值上循環來拆分對象的數組

[ RowDataPacket { new_path: '1481640456051.natedogg.jpg' }, 
RowDataPacket { new_path: '1486655771055.natedogg.jpg' }, 
RowDataPacket { tag_id: 170 }, 
RowDataPacket { tag_id: 171 }, 
RowDataPacket { tag_id: 169 }, 
RowDataPacket { tag_id: 172 }, 
RowDataPacket { id: 1, tags: 'myfirstTag' }, 
RowDataPacket { id: 4, tags: 'wrong' }, 
RowDataPacket { id: 31, tags: 'premier' }, 
RowDataPacket { id: 169, tags: 'west' }, 
RowDataPacket { id: 170, tags: 'WOWW' }, 
RowDataPacket { id: 171, tags: 'liopppp' }, 
RowDataPacket { id: 172, tags: 'daftpunk' }, 
RowDataPacket { id: 173, tags: 'dfgdfg' }, 
RowDataPacket { id: 174, tags: 'sport' }, 
RowDataPacket { id: 175, tags: 'hhdhd' }, 
RowDataPacket { id: 176, tags: 'sdfsdfee' } ] 

我想有兩個數組,第一個的一切,直到最後tag_id和一個裏面有idtags一個新的陣列。

我不知道如何正確使用.map。

+0

此數組無效。 –

+0

你是什麼意思..你能解釋更多..你的期望是什麼? – challenger

+0

@challenger每個元素都應該存儲在單獨的對象中 - 「{RowDataPacket:{tag_id:170}}」或者只是刪除這些'RowDataPacket'。 –

回答

2

可使用數組filter方法,但你必須糾正你的數組語法:

var arr = [ { new_path: '1481640456051.natedogg.jpg' }, 
 
{ new_path: '1486655771055.natedogg.jpg' }, 
 
{ tag_id: 170 }, 
 
{ tag_id: 171 }, 
 
{ tag_id: 169 }, 
 
{ tag_id: 172 }, 
 
{ id: 1, tags: 'myfirstTag' }, 
 
{ id: 4, tags: 'wrong' }, 
 
{ id: 31, tags: 'premier' }, 
 
{ id: 169, tags: 'west' }, 
 
{ id: 170, tags: 'WOWW' }, 
 
{ id: 171, tags: 'liopppp' }, 
 
{ id: 172, tags: 'daftpunk' }, 
 
{ id: 173, tags: 'dfgdfg' }, 
 
{ id: 174, tags: 'sport' }, 
 
{ id: 175, tags: 'hhdhd' }, 
 
{ id: 176, tags: 'sdfsdfee' } ]; 
 

 
var arr1 = arr.filter(function(item) { 
 
\t return item.hasOwnProperty('tag_id'); 
 
}); 
 

 
var arr2 = arr.filter(function(item) { 
 
\t return item.hasOwnProperty('id') && item.hasOwnProperty('tags'); 
 
}); 
 

 
console.log(arr1, arr2)

如果您使用ES2015你也可以使用箭頭功能來簡化上面的代碼:

var arr1 = arr.filter((item) => item.hasOwnProperty('tag_id')); 
var arr2 = arr.filter((item) => item.hasOwnProperty('id') && item.hasOwnProperty('tags')); 
+1

不應該是'&&'? –

+1

是的,謝謝@KindUser!修正:) –

+0

@BartekFryzowicz謝謝,它完美的作品! – pkerckho