问题描述
我试图遍历多个对象,并将每个date_created的键值与字符串进行比较。这些对象来自数组,可以映射并输出结果,如下所示:遍历每个对象后,如果date_created的键值等于我的字符串,我希望将其推入数组。>
我提供了有关当前如何检索对象的示例,我想知道如何循环/遍历每个对象并将键值与我的字符串进行比较。
最初返回的数据
(14) [{…},{…},{…}]
0: {4: "X",5: "X",6: "X",7: "X",8: "X",9: "X",id: "X",form_id: "X",post_id: "X",date_created: "2020-08-10 01:28:59",date_updated: "X",…}
1: {4: "X",date_created: "2019-11-08 02:56:03",…}
2: {4: "X",date_created: "2019-10-09 15:05:16",…}
)
用于呈现对象列表的代码(映射最初返回的数据以将对象拉出数组)
如果这是最初获取我的对象的错误方法,请提出一种更有效的方法。
resData.map(result => {
console.log(result);
});
对象数组映射结果:
{4: "X", …}
{4: "X", …}
解决方法
我希望这会有所帮助。但是不要忘记Array.map
是返回数组。
const wantedDate = "2020-08-11 01:28:59";
const newArr = [];
const arr = [
{4: "X",5: "X",6: "X",7: "X",8: "X",9: "X",id: "X",form_id: "X",post_id: "X",date_created: "2020-08-10 01:28:59",date_updated: "X"},{4: "X",date_created: "2020-08-11 01:28:59",date_updated: "X"}
]
arr.map((values) => {
if(values.date_created === wantedDate) {
newArr.push(values);
}
})
console.log(newArr);