数组中的数组不工作

Javascript Array inside an array not working

本文关键字:数组 工作      更新时间:2023-09-26

我是javascript新手。我试图在数组中实现这个输出,但我真的做不到。

输出应该是:

["test", "test1"],
["test2", "test3"]
从这个:

项目的数据:

items = [
    {
       data1: "test",
       data2: "test1"
    },
    {
       data1: "test2",
       data2: "test3"
    },
]

我试图推到一个新的数组在这里,但不工作。有什么解决办法吗?

  for (var i = 0; i < items.length; i++) {
      items[i]
  }

使用Array#map方法

var items = [{
  data1: "test",
  data2: "test1"
}, {
  data1: "test2",
  data2: "test3"
}, ];
console.log(
  items.map(function(obj) {
    return [obj.data1, obj.data2]
  })
);

使用Array.prototype.reduce并将items的所有值列出到数组中,而不仅仅是data1data2的解决方案:

var items=[{data1:"test",data2:"test1"},{data1:"test2",data2:"test3"}];
var result = items.reduce(function(prev,curr){
  prev.push(Object.keys(curr).map(e=>curr[e]));
  return prev;
},[]);
console.log(result);

这里有另一个解决方案:

jsfiddle

var items= [
   {
     data1: "test",
     data2: "test1"
   },
   {
     data1: "test2",
     data2: "test3"
   },
];
for(i in items){
   array=[];
   for(j in items[i]){
      array.push(items[i][j])
   }
   console.log(array);
}