javascript - 如何从嵌套在js对象数组中的数组中删除sessionID:null值对象
问题描述
[
{
"_id": "5edfb4e587a1873120735dcf",
"firstname": "abc",
"lastname": "abc",
"sessions": [
{
"_id": "5efc68d146d8330a449e7108",
"sessionID": null
},
{
"_id": "5efc68e646d8330a449e710a",
"sessionID": null
}
]
},
{
"_id": "5eedf5685bdb7d33c83186e7",
"firstname": "sam",
"lastname": "ple",
"sessions": [
{
"_id": "5efc692d46d8330a449e710c",
"sessionID": null
}
]
},
{
"_id": "5ef04df83e41dd5b78fe6908",
"firstname": "User",
"lastname": "name1",
"sessions": [
{
"_id": "5efc6a8846d8330a449e710e",
"sessionID": null
},
{
"_id": "5efc6abd46d8330a449e7110",
"sessionID": null
}
]
},
{
"_id": "5efe0d0c7300073244d765d9",
"sessions": [],
"firstname": "User",
"lastname": "name1"
}
]
解决方案
您需要映射您的数组并过滤掉带有 null 的会话
let originalArray = [
{
"_id": "5edfb4e587a1873120735dcf",
"firstname": "abc",
"lastname": "abc",
"sessions": [
{
"_id": "5efc68d146d8330a449e7108",
"sessionID": null
},
{
"_id": "5efc68e646d8330a449e710a",
"sessionID": null
}
]
},
.... the rest of your orignal object
]
let newArray = originalArray.map(item => {
let sessions = item.sessions.filter(session => {
return session.sessionID !== null
})
return {
...item,
sessions
}
})
推荐阅读
- python - 如何让我的 Django API 同时为多个用户工作?
- vb.net - 带有可选参数语法错误的事件的 AddHandler
- svg - 在 gatsby 中动态渲染 svg
- c++ - vcpkg:忽略包的内部版本(qt5-base)并使用外部版本?
- azure-devops - 使用 AzureDeops 在 linux 和 windows 代理中运行时,Gulp 任务输出不同
- javascript - 选择第一个帖子(循环)
- sql-server - MS SQL 计算 GROUPED 数据的模式
- java - 为什么我的对象返回 2 次,而我的 for 循环没有被读取?
- javascript - 在aws s3上上传大型javascript对象作为json文件(有效方式)
- google-apps-script - 使用 Google Apps 脚本在电子表格中创建排名