Javascript 从对象获取特定值并将其推入数组
您好,我有一个obj(来自JSON解析),我试图从中只获取一个值“value”(default.timelineData) 例如,从这个obj我想要一个数组[38,35,87,63,34] 我尝试过使用Object.values并将其传递给数组,然后再使用它,但它非常复杂,我相信有一个快捷方式。功能不成功希望得到帮助谢谢Javascript 从对象获取特定值并将其推入数组,javascript,node.js,arrays,algorithm,data-structures,Javascript,Node.js,Arrays,Algorithm,Data Structures,您好,我有一个obj(来自JSON解析),我试图从中只获取一个值“value”(default.timelineData) 例如,从这个obj我想要一个数组[38,35,87,63,34] 我尝试过使用Object.values并将其传递给数组,然后再使用它,但它非常复杂,我相信有一个快捷方式。功能不成功希望得到帮助谢谢 { “默认值”:{ “时间线数据”:[ { “时间”:“1610323200”, “格式化时间”:“2021年1月11日”, “formattedAxisTime”:“1月1
{
“默认值”:{
“时间线数据”:[
{
“时间”:“1610323200”,
“格式化时间”:“2021年1月11日”,
“formattedAxisTime”:“1月11日”,
“价值”:[
38
],
“hasData”:[
真的
],
“formattedValue”:[
"38"
]
},
{
“时间”:“1610409600”,
“格式化时间”:“2021年1月12日”,
“formattedAxisTime”:“1月12日”,
“价值”:[
35
],
“hasData”:[
真的
],
“formattedValue”:[
"35"
]
},
{
“时间”:“1610496000”,
“格式化时间”:“2021年1月13日”,
“formattedAxisTime”:“1月13日”,
“价值”:[
87
],
“hasData”:[
真的
],
“formattedValue”:[
"87"
]
},
{
“时间”:“1610582400”,
“格式化时间”:“2021年1月14日”,
“格式化时间”:“1月14日”,
“价值”:[
63
],
“hasData”:[
真的
],
“formattedValue”:[
"63"
]
},
{
“时间”:“1610668800”,
“格式化时间”:“2021年1月15日”,
“formattedAxisTime”:“1月15日”,
“价值”:[
34
],
“hasData”:[
真的
],
“formattedValue”:[
"34"
]
}
],
“平均数”:[
]
}
}
您试图访问的属性是一个数组。您可以使用Array.map
迭代元素,同时将返回的值推送到新数组中。像这样:
const values=obj.default.timelineData.map(item=>item.value[0])
console.log(值);//[38, 35, 87, 63, 34]
请添加您的“尝试”。也许看一下会有所帮助。也许更好的方法是flatMap
数组,并在结果中包含每个级别的所有内容,而不仅仅是第一个级别。(我知道现在每个都只有一个,但谁知道这是否/何时会改变?)