Javascript 需要将对象转换为数组

Javascript 需要将对象转换为数组,javascript,Javascript,未捕获的TypeError:无法读取未定义的属性“name”。我需要获取该名称您试图访问错误的密钥。对象有一个键obj1,它是一个数组。您还必须循环遍历该数组 const obj={ obj1:[{ 名称:“Max”, 年龄:25 }], obj2:[{ 名称:“Min”, 年龄:24 }] } var objectValuesArr=Object.values(obj) var specificularobj=objectValuesArr.map(obj=>obj.forEach(obj=

未捕获的TypeError:无法读取未定义的属性“name”。我需要获取该名称

您试图访问错误的密钥。对象有一个键obj1,它是一个数组。您还必须循环遍历该数组

const obj={
obj1:[{
名称:“Max”,
年龄:25
}],
obj2:[{
名称:“Min”,
年龄:24
}]
}
var objectValuesArr=Object.values(obj)

var specificularobj=objectValuesArr.map(obj=>obj.forEach(obj=>console.log(obj.name))
如果您只是尝试循环对象值,使用forEach而不是map是一个好主意。Map返回一个新数组,但forEach不返回。此外,Object.values()将返回对象中所有值的数组(在本例中,每个值都是一个对象数组)。因此,使用2个forEach循环使任务更容易

const obj={
obj1:[{
名称:“Max”,
年龄:25
}],
obj2:[{
名称:“Min”,
年龄:26
}]
}

Object.values(obj).forEach(mainObj=>mainObj.forEach(obj=>console.log(obj.name))
一些小的调试(
console.log(obj)
)会告诉你这个问题。我应该怎么做才能得到这个名字?我不理解你的问题。您试图将什么转换为数组?const obj={obj1:{name:[{first:'Max'}]',age:25}}}Object.values(obj).map(obj=>console.log(obj.obj1.name)),这是我的代码,我需要通过它进行映射才能获得名称
const obj = {
  obj1: [{
    name: 'Max',
    age: 25
  }]
}

Object.values(obj).map(obj => console.log(obj.obj1.name))