【问题标题】:Is there a way to iterate over an Object based upon the length of an array?有没有办法根据数组的长度迭代对象?
【发布时间】:2020-08-26 23:45:57
【问题描述】:

我有这个数组 ["12345678", "87654321"] 我想将每个索引注入到 itemId 类别中的一个对象中,然后再次循环该对象,将第二个索引放入另一个 itemId 类别中。

var myArray = ["12345678", "87654321", "12345678"]
var idArray =[]
   var arrayLength = myArray.length;
    for (var i =0; i < arrayLength; i++) {
        let idElement = myArray[i]
        idArray.push(idElement);
        console.log(idElement);

   let multipleitems = {
        Request: {
            Details: {
                id: idArray,
                amount: 1
            },
        }
    };

给我这个输出

Request: {Details: {Id: ["12345678", "12345678", "12345678" ], amount: 1}}

是否可以根据 myArray 中有多少索引来迭代“详细信息多次以获得此输出”

{"Request":{"Details":[{"Id":"12345678","amount":1},{"itemId":"87654321","amount":1},{"Id":"12345678","amount":1}]}} 

【问题讨论】:

    标签: javascript arrays javascript-objects


    【解决方案1】:

    这是一个非常基本的array map() 操作。每次迭代都返回一个新对象,而 map() 本身返回一个新数组

    var myArray = ["12345678", "87654321", "12345678"];
    
    let multipleitems = {
      Request: {
        Details: myArray.map(id => ({id, amount:1}) )
      }
    };
    
    console.log(multipleitems)

    【讨论】:

      猜你喜欢
      • 2012-08-06
      • 1970-01-01
      • 2011-09-16
      • 1970-01-01
      • 2016-03-03
      • 2020-11-20
      • 1970-01-01
      • 1970-01-01
      • 2021-07-15
      相关资源
      最近更新 更多