[英]how can i parse this complex json nodejs
我正在嘗試解析json
request(requestOptions,(err,res,body)=>{
for(var i in body){
console.log(body.data[0].quote.USD.price)
}
})
而json就像
{ status: {something},
data: [{
id:1,
name:'Bitcoin',
symbol:'BTC',
slug:'bitcoin',
circulating_supply:17400325,
total_supply:17400325,
max_supply:21000000,
date_added:'2013-04-28T00:00:00.000Z',
num_market_pairs:6618,
tags:[
Array
],
cmc_rank:1,
last_updated:'2018-11-30T11:00:28.000Z',
quote:[
Object
]
}]
}
引用對象是:
{ USD:
{ price: 4071.55349237,
volume_24h: 5966638087.9657,
percent_change_1h: -3.18515,
percent_change_24h: -6.66359,
percent_change_7d: -5.74611,
market_cap: 70846354022.12302,
last_updated: '2018-11-30T11:03:22.000Z' } }
“我提到了兩個json對象,另一個是上述json的副本”。
{ status:{ },
data:[ ]
}
我運行上面的代碼,它給了我這個輸出:
1個比特幣BTC 4030.51947765 1個比特幣BTC 4030.51947765
請幫助我如何獲取對象的所有“ ID”,“名稱”,“符號”,“價格”,並將其保存到一個數組中。
只需將其映射:
https://stackblitz.com/edit/js-c1fwsf
const req = {
data: [
{
id:1,
name:'Bitcoin',
symbol:'BTC',
slug:'bitcoin',
circulating_supply:17400325,
total_supply:17400325,
max_supply:21000000,
date_added:'2013-04-28T00:00:00.000Z',
num_market_pairs:6618,
cmc_rank:1,
last_updated:'2018-11-30T11:00:28.000Z',
quote:[
{
USD:
{
price: 4071.55349237,
volume_24h: 5966638087.9657,
percent_change_1h: -3.18515,
percent_change_24h: -6.66359,
percent_change_7d: -5.74611,
market_cap: 70846354022.12302,
last_updated: '2018-11-30T11:03:22.000Z'
}
}
],
},
{
id:2,
name:'Litecoin',
symbol:'LTC',
slug:'litecoin',
circulating_supply:17400325,
total_supply:17400325,
max_supply:21000000,
date_added:'2013-04-28T00:00:00.000Z',
num_market_pairs:6618,
cmc_rank:1,
last_updated:'2018-11-30T11:00:28.000Z',
quote:[
{
USD:
{
price: 221.55349237,
volume_24h: 5966638087.9657,
percent_change_1h: -3.18515,
percent_change_24h: -6.66359,
percent_change_7d: -5.74611,
market_cap: 70846354022.12302,
last_updated: '2018-11-30T11:03:22.000Z'
}
}
]
}]
}
const res = req.data.map(x => ({
name: x.name,
id: x.id,
symbol: x.symbol,
price: x.quote[0].USD.price,
}))
console.log(res)
試試這個
let mydata = { status: "something",
data: [{
id:1,
name:'Bitcoin',
symbol:'BTC',
slug:'bitcoin',
circulating_supply:17400325,
total_supply:17400325,
max_supply:21000000,
date_added:'2013-04-28T00:00:00.000Z',
num_market_pairs:6618,
tags:[
"Something"
],
cmc_rank:1,
last_updated:'2018-11-30T11:00:28.000Z',
quote:
{ USD:
{ price: 4071.55349237,
volume_24h: 5966638087.9657,
percent_change_1h: -3.18515,
percent_change_24h: -6.66359,
percent_change_7d: -5.74611,
market_cap: 70846354022.12302,
last_updated: '2018-11-30T11:03:22.000Z' } }
}]
}
let myArray = []
mydata.data.map((o)=>{
const { id, name, symbol } = o
myArray.push({
id,
name,
symbol,
price : o.quote.USD.price
})
})
console.log(myArray)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.