Javascript 映射对象数组

Javascript 映射对象数组,javascript,arrays,object,Javascript,Arrays,Object,请仔细阅读问题,这不是以下内容的副本: 让我们考虑下面的对象数组: var obj = [{ 'key1' : 'value1' }, { 'key2' : 'value2' }]; 我想映射数组以获得每个对象的键和值。比如: obj.map((key, val) => console.log(key, val)); 我已经尝试了很多东西,比如Object.entries(obj),但它总是会导致复杂的解决方案,其中包含许多括号,比如Object.entries(ob

请仔细阅读问题,这不是以下内容的副本:


让我们考虑下面的对象数组:

var obj = [{ 'key1' : 'value1' }, { 'key2' : 'value2' }];
我想映射数组以获得每个对象的键和值。比如:

obj.map((key, val) => console.log(key, val));
我已经尝试了很多东西,比如
Object.entries(obj)
,但它总是会导致复杂的解决方案,其中包含许多括号,比如
Object.entries(obj)[0][1]


有没有一种简单、好、高效的方法来映射对象数组?注意:我需要每个对象的键和值

您似乎只想打印出来或访问它们:

var obj = [{ 'key1' : 'value1' }, { 'key2' : 'value2' }];
obj.forEach(el => {
  for (var prop in el) {
    console.log(prop, el[prop])
  }
})

// results: 
// key1 value1
// key2 value2
.map
将一个数组更改为另一个数组,这似乎与您要查找的不一样

var objs=[{'key1':'value1'},{'key2':'value2'}];
objs.forEach(obj=>{
for(让p在obj中)console.log(p,obj[p]);

});不像@nopole answer那样干净,但这种类型可以实现键、值对象所需的功能

var objs=[{'key1':'value1'},{'key2':'value2'}];
objs.forEach(obj=>{
//循环键和值
for(让Object.entries(obj))的[key,value]{
console.log(键、值);
}

});
objs.flatMap(Object.entries)
应该做什么?预期的输出值是多少,要将对象数组映射到什么?您的“something like”只记录键和值,这很简单,不需要
map
。你到底需要什么?我想创建一个HTTP请求,比如key1=value1&key2=value2,但我已经知道如何做了,我只是在访问对象键和值时遇到了困难。请展示你的代码。在数组中进行迭代似乎没有问题,只是从对象中获取键和值?解决这个问题的方法是使用一种不那么奇怪的输入格式——为什么是一个由单个属性对象组成的数组,而不是一个可以简单枚举的具有多个属性的对象?@Fifi您想要的最终结果是什么?您的预期结果是数组还是单个对象,以及其中包含哪些值?我想使用map方法.use.map代替.foreach,它也适用于此way@Fifi但是为什么呢?您还没有告诉我们要生成哪种数组值,如果不生成另一个数组,则不应使用
map
。谢谢,但问题是关于map()方法的。我知道如何在数组上循环。@Fifi请参阅答案的第二部分是的,就是它。不像我想象的那么简单,但我想这是最短的语法。非常感谢。