Javascript 如何将数组转换为对象

Javascript 如何将数组转换为对象,javascript,Javascript,我有一个简单的数组,我需要按照以下顺序将其转换为一个对象,目标是生成一个包含2到3列的矩阵 array1=[“A”、“B”、“C”、“D”、“E”、“F”] 或 array1=[“A”、“B”、“C”、“D”、“E”、“F”、“G”] 我需要一个像这样的东西 new = [ { "name: A", "name2: B" }, { "name: C", "name2: D" }, { "

我有一个简单的数组,我需要按照以下顺序将其转换为一个对象,目标是生成一个包含2到3列的矩阵

array1=[“A”、“B”、“C”、“D”、“E”、“F”]

array1=[“A”、“B”、“C”、“D”、“E”、“F”、“G”]

我需要一个像这样的东西

new = [
    {
       "name: A",
       "name2: B"
    },
    {
       "name: C",
       "name2: D"
    },
    {
       "name: E",
       "name2: F"
    },
    {
       "name: G"
    },

]
和3

new = [
    {
       "name: A",
       "name2: B",
       "name3: C"
    },
    {
       "name: D",
       "name2: E",
       "name3: F"
    },
    {
       "name: G",
       "name2: H",
       "name3: I"
    },
    {
       "name: J",
       "name2: K"
    },

]

谢谢

正如评论所指出的,我想你对自己到底需要什么感到困惑——你所描述的只是一个多维数组,而不是一个对象。只要在谷歌上搜索这个词,你就会在网上找到很多信息

对于您的特定示例,以下是如何使用两个for循环来完成此操作:

array1 = ["A", "B", "C", "D", "E", "F", "G"];

makeGrid(array1, 2);
makeGrid(array1, 3);


function makeGrid(array, step) {
  const grid = [];
  for (i = 0; i < array.length; i+= step) {
    const tmp = [];
    for (j = 0; j < step && array[i + j]; j++) {
      tmp.push(array[i+j]);
    }
    grid.push(tmp);
  }

  console.log(grid);
}
array1=[“A”、“B”、“C”、“D”、“E”、“F”、“G”];
makeGrid(array1,2);
makeGrid(阵列1,3);
函数makeGrid(数组,步骤){
常量网格=[];
对于(i=0;i
您可以对数组进行切片,直到没有更多值可用为止。使用所需长度的切片数组,可以生成具有给定名称和数字的新对象

函数getGrouped(数组、大小、键){
var结果=[],
i=0;
while(i({[key+i]:v}));
}
返回结果;
}
log(getGrouped([“A”、“B”、“C”、“D”、“E”、“F”、“G”]、2,‘name'));
log(getGrouped([“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”]、3,“name”)

.as控制台包装{max height:100%!important;top:0;}
这些对象不是有效的JS对象。您想要的结果无效。javascript使用括号表示数组。顺便说一句,你试过什么?你的数据来自哪里?我做了一点修改,这是不可能在一个对象中为不同的值使用相同的键的。