Javascript 如何获取对象数组而不是数组数组
好的,我认为这很简单,但到目前为止,我无法获得首选结果,因此我的数据库中有一个对象数组,如下所示:Javascript 如何获取对象数组而不是数组数组,javascript,arrays,react-native,Javascript,Arrays,React Native,好的,我认为这很简单,但到目前为止,我无法获得首选结果,因此我的数据库中有一个对象数组,如下所示: "meetingPlans": [ { "date": "2020-11-30", "times": [ { "section": "morning",
"meetingPlans": [
{
"date": "2020-11-30",
"times": [
{
"section": "morning",
"slots": 4,
"time": "9:00-10:00"
},
{
"section": "morning",
"slots": 3,
"time": "10:00-10:15"
},
{
"section": "morning",
"slots": 2,
"time": "10:15-10:30"
},
{
"section": "morning",
"slots": 0,
"time": "10:30-11:00"
}
]
}
]
我需要在一个数组中分别得到times数组,我用下面的方法做了,但是结果是数组的数组,不能满足我需要一个数组:
const therapists = useSelector(state => state.therapists.listOfTherapists); // this is the whole object
let therapistDates = [];
let therapistTimes = [];
const plansArray = therapists.meetingPlans;
plansArr.forEach((el) => therapistTimes.push(el.times));
console.log(therapistTimes) //this returns an array of array. but I need a single array
如何获取阵列?您可以使用
const res = plansArr.reduce((prev, curr) => {return [...prev, curr.times]},
[]);
console.log(res);
你可以用这个方法来做
const res = plansArr.reduce((prev, curr) => {return [...prev, curr.times]},
[]);
console.log(res);
你也可以这样做:
let result=[].concat(...plansArr.map(x=>x.times))
console.log(result)
你也可以这样做:
let result=[].concat(...plansArr.map(x=>x.times))
console.log(result)
meetingPlans
有一个对象?当有多个“日期”时,预期的结果是什么?您只需通过将数组展平即可。Do:therapistTimes.flat()
@Reyno ty bro,这就是我要找的会议计划有一个对象?当有多个“日期”时,预期的结果是什么?你可以通过。Do:therapistimes.flat()
@Reyno ty bro,这就是我要找的