gpt4 book ai didi

javascript - 如何访问 Angular 4中另一个对象数组内的对象数组

转载 作者:行者123 更新时间:2023-12-03 02:32:36 26 4
gpt4 key购买 nike

我有一个 API 响应返回此:

{
"code": 0,
"message": "hierarchy list",
"payload": [

{
"id": 2,
"name": "nameParent",
"code": "WUcw",
"childsOfPayload": [
{
"id": 5,
"name": "NameChild1",
"code": "ozyW",
"status": "Active",
"childsofChildOfPayload": [
{
"id": 8,
"name": "NameChild2",
"code": "aitq",
"order": 30,

},
]}]}]}

我试图获取每个子对象、ChildOfPayload 和 childOfChildOfpayload 中的不同对象。

首先,我返回了有效负载的不同名称值:

    getAllPayloadName() {
this.userService.getName().subscribe(
data => {
this.values= data;
}
);

}

但是我必须做什么才能将每个 child 的名字与不同的父值关联起来!

我的意思是在这种情况下。

       NameChild1 
NameChild2

我试过这个:

manipulateDataa() {
this.values.subscribe(x => {
x.payload.foreach((y:any) => {
y.childs.foreach((z:any) => {
console.log( z.name)
})
})
})
}

然后在getAllPayloadName中调用,还是不行。可能出了什么问题?

最佳答案

您可以执行类似的操作来获得所需的输出。 Here您可以阅读有关我使用的 forEach 循环的更多信息。

data = {
"code": 0,
"message": "hierarchy list",
"payload": [

{
"id": 2,
"name": "nameParent",
"code": "WUcw",
"childsOfPayload": [
{
"id": 5,
"name": "NameChild1",
"code": "ozyW",
"status": "Active",
"childsofChildOfPayload": [
{
"id": 8,
"name": "NameChild2",
"code": "aitq",
"order": 30,

},
]}]}]}

names = []

function iterator (obj, namesArr){
Object.keys(obj).forEach(key => {
if(key === "name") {
namesArr.push(obj[key])
} else if(typeof obj[key] === "object") {
iterator(obj[key][0], names)
}
})
}

iterator(data.payload[0], names)
console.log(names)

关于javascript - 如何访问 Angular 4中另一个对象数组内的对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48670993/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com