簡體   English   中英

如何將一個對象轉換為一個對象數組?

[英]How to transform an object into an array of objects?

我正在尋找一種將對象轉換為對象數組並刪除第一個唯一鍵的方法。

我該如何做:

{f56hdhgf54: {name: 'Sam', age: 34}, h65fg9f7d: {name: 'John', age: 42}}

到這個:

[{name: 'Sam', age: 34}, {name: 'John', age: 42}]

所以我可以這樣.map它:

result.map((person) => {
   console.log(person.name, person.age)
})

您可以使用Object.keys()獲取鍵數組,然后使用map()將鍵更改為值或在這種情況下為對象。

 var obj = {f56hdhgf54: {name: 'Sam', age: 34}, h65fg9f7d: {name: 'John', age: 42}} var result = Object.keys(obj).map(function(e) { return obj[e]; }); console.log(result); 

另一種方法是使用lodash映射函數來轉換數據,即

let data = {
   "f56hdhgf54": {
      "name": "Sam",
       "age": 34
    },
    "h65fg9f7d": {
      "name": "John",
      "age": 42
    }
}


let result = _(data)
  .map((value, key) => (
    value
  ))


 // result
 [
   {
      "name": "Sam",
      "age": 34
   },
   {
      "name": "John",
      "age": 42
   }
]

您可以使用Lodash在線測試儀https://codepen.io/travist/full/jrBjBz來測試代碼

使用jQuery解決這個問題

var xyz = [];
    var abcd = {f56hdhgf54: {name: 'Sam', age: 34}, h65fg9f7d: {name: 'John', age: 42}}
    $.each(abcd,function(i,data){

    xyz .push(data);

    })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM