简体   繁体   中英

How to print individual key and value from json array after converting from csv to json in NodeJS and Typescript

I am a fresher and new to Javascript and Typescript, I am learning in the office. I have a csv file and I am able to parse the CSV file using this link https://www.npmjs.com/package/csv-parser . After parsing, I am getting the array of json key and values. I provide below the output.

[ { 'PURCHASE DATE': '2016-04-03',
    'CANDY PURCHASED': '1000',
    'CASH PAID': '10000.11',
    'BUYER NAME': 'Charlie Kelly' },
  { 'PURCHASE DATE': '2017-11-14',
    'CANDY PURCHASED': '1000',
    'CASH PAID': '12000.22',
    'BUYER NAME': 'Frank Reynolds' },
  { 'PURCHASE DATE': '2018-01-20',
    'CANDY PURCHASED': '2000',
    'CASH PAID': '40000.33',
    'BUYER NAME': 'Frank Reynolds' },
  { 'PURCHASE DATE': '2018-03-20',
    'CANDY PURCHASED': '2000',
    'CASH PAID': '40000.44',
    'BUYER NAME': 'Mac' },
  { 'PURCHASE DATE': '2019-01-02',
    'CANDY PURCHASED': '2000',
    'CASH PAID': '50000.55',
    'BUYER NAME': 'Sweet Dee' },
  { 'PURCHASE DATE': '2019-01-02',
    'CANDY PURCHASED': '1500',
    'CASH PAID': '13500.66',
    'BUYER NAME': 'Dennis Reynolds' } ]

Now my requirement is to print only the buyer name from the above json object.

I tried using the following code but it is not working.

for (let i = 0; i < results.length; i++) {
            console.log("Printing ===>", results[i].name)
            console.log("Buyer Name ====", JSON.stringify(results[i]))
        }

Please help me to solve it. I am writing the code in Typescript file Myparser.ts.

results.map(result => result['BUYER NAME']).forEach(buyer => console.log(buyer));

请参阅每个地图

results.forEach((obj)=>console.log(obj['BUYER NAME']));

 const results=[ { 'PURCHASE DATE': '2016-04-03', 'CANDY PURCHASED': '1000', 'CASH PAID': '10000.11', 'BUYER NAME': 'Charlie Kelly' }, { 'PURCHASE DATE': '2017-11-14', 'CANDY PURCHASED': '1000', 'CASH PAID': '12000.22', 'BUYER NAME': 'Frank Reynolds' }, { 'PURCHASE DATE': '2018-01-20', 'CANDY PURCHASED': '2000', 'CASH PAID': '40000.33', 'BUYER NAME': 'Frank Reynolds' }, { 'PURCHASE DATE': '2018-03-20', 'CANDY PURCHASED': '2000', 'CASH PAID': '40000.44', 'BUYER NAME': 'Mac' }, { 'PURCHASE DATE': '2019-01-02', 'CANDY PURCHASED': '2000', 'CASH PAID': '50000.55', 'BUYER NAME': 'Sweet Dee' }, { 'PURCHASE DATE': '2019-01-02', 'CANDY PURCHASED': '1500', 'CASH PAID': '13500.66', 'BUYER NAME': 'Dennis Reynolds' } ] results.map(obj=>{ console.log(obj['BUYER NAME']); })
As you asked only to print Buyer Name What you did is right. But you cannot fetch multi word String like results[i].name

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM