首页 > 解决方案 > 如何将我的数组转换为对象或 json webscraping

问题描述

转换抓取的数据数组的最佳方法是什么:

[ 'random product 1', 'random product 2', 'random product 3', 'random product 4'] [ '$99', '$99', '$99', '$99']


                                              into object 

{ name: 'random product 1', price: '$100', }{ name: 'random product 2', price: '$100', }{ name: 'random product 3', price: '$100', }


我试过了

var keys = [
        'name',
        'price'
    ]
const mainData = {} 
    for (i = 0; i < 10; i++) {
        let keyIdx = 0;
        for (j = 0; j < 2; j++) {
            if (l < 2) {
            //bundle.name and bundle.price contains above mentioned array of name and price
                mainData[keys[j]] = bundle.name[l];
                // keyIdx++;
                j++;
                mainData[keys[j]] = bundle.price[l];
            }
            


但它只返回一个对象{ name: 'random product 3', price: '$99' }


标签: javascriptarraysjsonobjectweb-scraping

解决方案


如果您有 2 个长度相同的数组,则可以通过其中一个数组进行映射,并使用iname与相应的price.

 const names = ['random product 1', 'random product 2', 'random product 3', 'random product 4']
 const prices = ['$99', '$99', '$99', '$99']


 const result = names.map((name, i) => {
   return {
     name,
     price: prices[i]
   }
 });

 console.log(result);


推荐阅读