繁体   English   中英

将数组值转换为对象,根据索引位置添加键

[英]convert array values to object, add keys based on index position

我在车把模板中使用数据源。 当我获取数据时,结果对象包含嵌套数组,例如:

["10004", "Some title", "Some Description", "$19.95", "Some other text here..."]

我想将数组值转换为对象并设置/访问对象键(这包含在车把模板中)。 任何建议都有帮助。 TY!

有关更多信息:这是我到目前为止构造的。

// data from API http response is var data

let dataObj = {};
    dataObj =
      _.chain(data)
      .values()
      .map(function(el){
        return {'product': el};
      });

我的结果是这样的:

{"products": [
     {
         "product":[
            "123456",
            "Some title",
            "Some descritpion.Lorem ipsum"
         ]
      }
]};

但我正在寻找的是:

{
   "products":[
      {
         "product":[
            {
               "id":"123456"
            },
            {
               "title":"Some title"
            },
            {
               "description":"Some descritpion.Lorem ipsum"
            },
            {
               "price":"$103.05"
            }
         ]
      }
   ]
}

编辑:再次感谢您的光临!

在这种情况下,您可以创建一个简单的转换函数并重新使用它。

function convert(data){
       return {
          product: [{
             id: data[0],
             title: data[1],
             description: data[2],
             price: data[3]
          }]
       }
    }

 let data = ["10004", "Some title", "Some Description", "$19.95", "Some other text here..."]; function convert(data){ return { product: [{ id: data[0], title: data[1], description: data[2], price: data[3] }] } } console.log(convert(data)) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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