javascript - 如何将过滤器应用于 JavaScript 中的 JSON 数组?
问题描述
我从我的控制器得到这个结果,并想捕捉一些物品。让我们看一些代码:
```
[
{
"id": 17,
"corretora_id": 1,
"user_id": 2,
"order": null,
"nome": "Johnny English",
"telefone": "(11)0070-0070",
"celular": "(00)70070-0700",
"email": "j@mi7.uk",
"obs": "É o homem mais burro do mundo. Mas quer o plano mais caro do Mundo porque ele é rico",
"img_lead": "1534353433.png",
"created_at": "2018-08-15 17:17:14",
"updated_at": "2018-08-15 21:30:48",
"atendimentos": [
{
"id": 22,
"lead_id": 17,
"dataAgendamento": "2018-08-16 09:00:00",
"user_id": 2,
"comentarios": "Realmente é o homem mais burro do mundo. QUer um plano de saúde para agentes secretos em nome de 007.\nPediu pra ligar amanhã",
"created_at": "2018-08-15 20:48:07",
"updated_at": "2018-08-15 20:48:07"
},
{
"id": 27,
"lead_id": 17,
"dataAgendamento": "2018-08-17 12:00:00",
"user_id": 2,
"comentarios": "Teste",
"created_at": "2018-08-17 18:49:36",
"updated_at": "2018-08-17 18:49:36"
},
{
"id": 28,
"lead_id": 17,
"dataAgendamento": "2018-08-25 19:34:00",
"user_id": 2,
"comentarios": "Esse tem que estar em cima quando reload",
"created_at": "2018-08-18 14:28:24",
"updated_at": "2018-08-18 14:28:24"
}
]
},
```
我需要读取 obj id:17 中的所有项目以及“atendimentos”节点内的子项目,如“lead_id”和“dataAgenmento”。
我该怎么做?
解决方案
首先你需要展平数组,试试这个功能:
flatten(arr, result = []){
for (var i = 0, length = arr.length; i < length; i++) {
var value = arr[i];
if (Array.isArray(value)) {
flatten(value, result);
} else {
result.push(value);
}
}
return result;
}
推荐阅读
- android-studio - 如何从android studio选项卡中删除彩色框(框架)
- hyperledger-fabric - 在超级账本结构中添加新组织的订购者
- arrays - Flask 是否将 JSON 数组对象映射到 Python 字符串?
- react-native - 如何自定义对 React-Native 的博览会权限“警报”需求?
- java - 在类的@InjectMocks 期间出错
- odata - oData NOT In 与子查询等效
- dialogflow-es - 调用另一个意图的轮播项目(不是后续 actions_intent_option)
- javascript - 打字稿看不到声明文件
- angular - Highcharts - 每个切片的饼图颜色
- qnamaker - 是否可以更改 QnA 制造商的基础 AI/ML 算法?