javascript - How to use map function to return multiple keys from an array of objects? ES6 - Stack Overflow

If I have an array of objectsvar bitcoinData = [{"date": "2013-05-01","txVolu

If I have an array of objects

var bitcoinData = [
{
  "date": "2013-05-01",
  "txVolume(USD)": 108659660.293,
  "txCount": 52443,
  "marketcap(USD)": 1542820000,
  "price(USD)": 139,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3575,
  "fees": 36.80599998,
  "activeAddresses": null
},
{
  "date": "2013-05-02",
  "txVolume(USD)": 96958519.0041,
  "txCount": 55169,
  "marketcap(USD)": 1292190000,
  "price(USD)": 116.38,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3425,
  "fees": 54.40791613,
  "activeAddresses": null

How can I create an array containing only the date and price of each day by using the map function?

If I have an array of objects

var bitcoinData = [
{
  "date": "2013-05-01",
  "txVolume(USD)": 108659660.293,
  "txCount": 52443,
  "marketcap(USD)": 1542820000,
  "price(USD)": 139,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3575,
  "fees": 36.80599998,
  "activeAddresses": null
},
{
  "date": "2013-05-02",
  "txVolume(USD)": 96958519.0041,
  "txCount": 55169,
  "marketcap(USD)": 1292190000,
  "price(USD)": 116.38,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3425,
  "fees": 54.40791613,
  "activeAddresses": null

How can I create an array containing only the date and price of each day by using the map function?

Share Improve this question asked Dec 3, 2019 at 23:17 JuniorSQLearnerJuniorSQLearner 652 silver badges6 bronze badges 0
Add a ment  | 

4 Answers 4

Reset to default 5

The naming "price(USD)" causes a problem for destructuring. So used basic instead. Here you go.

const bitcoinData = [
{
  "date": "2013-05-01",
  "txVolume(USD)": 108659660.293,
  "txCount": 52443,
  "marketcap(USD)": 1542820000,
  "price(USD)": 139,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3575,
  "fees": 36.80599998,
  "activeAddresses": null
},
{
  "date": "2013-05-02",
  "txVolume(USD)": 96958519.0041,
  "txCount": 55169,
  "marketcap(USD)": 1292190000,
  "price(USD)": 116.38,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3425,
  "fees": 54.40791613,
  "activeAddresses": null
  }];
  
  const summary = bitcoinData.map(item => ({ date: item.date, price: item["price(USD)"] }));
  
  console.log(summary);

Solved the destructuring issue, here it is using that technique.

    const bitcoinData = [
    {
      "date": "2013-05-01",
      "txVolume(USD)": 108659660.293,
      "txCount": 52443,
      "marketcap(USD)": 1542820000,
      "price(USD)": 139,
      "exchangeVolume(USD)": 0,
      "generatedCoins": 3575,
      "fees": 36.80599998,
      "activeAddresses": null
    },
    {
      "date": "2013-05-02",
      "txVolume(USD)": 96958519.0041,
      "txCount": 55169,
      "marketcap(USD)": 1292190000,
      "price(USD)": 116.38,
      "exchangeVolume(USD)": 0,
      "generatedCoins": 3425,
      "fees": 54.40791613,
      "activeAddresses": null
      }];
      
      const summary = bitcoinData.map(({ date, "price(USD)": price }) => ({ date, price }));
      
      console.log(summary);

Done

var bitcoinData = [
{
  "date": "2013-05-01",
  "txVolume(USD)": 108659660.293,
  "txCount": 52443,
  "marketcap(USD)": 1542820000,
  "price(USD)": 139,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3575,
  "fees": 36.80599998,
  "activeAddresses": null
},
{
  "date": "2013-05-02",
  "txVolume(USD)": 96958519.0041,
  "txCount": 55169,
  "marketcap(USD)": 1292190000,
  "price(USD)": 116.38,
  "exchangeVolume(USD)": 0,
  "generatedCoins": 3425,
  "fees": 54.40791613,
  "activeAddresses": null
 }]
 
 console.log(bitcoinData.map(data=> {
 return {
   date: data.date,
   'price(USD)': data['price(USD)']
 }})
 )

Try this:

bitcoinData.map(element => {
    return ({"date":element.date, "price(USD)":element["price(USD)"]})
});
BitCoinData.map(bitCoin => {date: bitcoin.date, price: bitcoin.price});

This should return an array of objects containing only the date and price

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745355407a4624085.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信