2017-10-12 29 views
-1

如何将JSON数组转换为NodeJs中的数组数组。 像这样:将Json数组转换为数组数组

"postBookmarks" : [ 
     { 
      "userId" : 1, 
      "postId" : 12 
     }, 
     { 
      "userId" : 1, 
      "postId" : 13 
     }, 
     { 
      "userId" : 1, 
      "postId" : 14 
     }, 
     { 
      "userId" : 1, 
      "postId" : 15 
     } 
    ] 

转换为:

var postBookmarks = [[1,12],[1,13],[1,14],[1,15]] 
+3

那你试试这么远吗? – marcolz

回答

0

这可能是作品:

var postBookmarks = req.body.postBookmarks.map(function(obj) { 
     return Object.keys(obj).map(function(key) { 
      return obj[key]; 
     }); 
    }); 
0
var result = postBookmarks.map(p=>[p.userId, p.postId]); 

结果: [[1,12],[1 ,13],[1,14],[1,15]]

0

您可以使用ES6的Array.map()根据条件从现有数组中形成新的数组。

map()方法创建一个新的数组,其结果是对调用数组中的每个元素调用一个提供的函数。

'use strict'; 

let json = postBookmarks.map((bookmark) => { 
    return [bookmark.userId, bookmark.postId]; 
}); 

console.log(json); 

它记录

[ [ 1, 12 ], [ 1, 13 ], [ 1, 14 ], [ 1, 15 ] ]