【问题标题】:access a property of an object [closed]访问对象的属性[关闭]
【发布时间】:2022-01-23 12:28:15
【问题描述】:

我们如何从一个对象访问某个属性值? ,我想从 regionAreaDto 访问面积值。我试过 element.territoryAreaDto[0].area 但它不起作用

#Sample Object (items) - items 是一个对象数组。

   {
    "id": 19,
    "region": "37",
    "repmid": 630,
    "territoryAreaDto": [
        {
            "id": 3,
            "regionId": 32,
            "territoryAssignmentsId": 19,
            "area": "121"
        }
    ]
}

#代码

public static modifyTerritoryAssignmentsObject(items: any) {
    items.forEach(element => {
      if(element.territoryAreaDto) {
        
        console.log('element.territoryAreaDto.area;' , element.territoryAreaDto[0].area)
        element.area = element.territoryAreaDto.area;
      }
    })
    return items;
  }

【问题讨论】:

  • 怎么不工作?发生了什么?有什么错误吗?
  • items 中有什么内容?
  • 无法读取未定义的属性(读取“区域”)
  • territoryAreaDto是一个数组应该是element.area = element.territoryAreaDto[0].area;
  • 应该是element.territoryAreaDto[0].area不是 element.territoryAreaDto.area

标签: javascript angular typescript


【解决方案1】:

试试这个。

    "id": 19,
    "region": "37",
    "repmid": 630,
    "territoryAreaDto": [
        {
            "id": 3,
            "regionId": 32,
            "territoryAssignmentsId": 19,
            "area": "121"
        }
    ]
}

public static modifyTerritoryAssignmentsObject(items: any) {
    items.forEach(element => {
      if(element.territoryAreaDto) {
        
        console.log('element.territoryAreaDto.area;' , element.territoryAreaDto[0].area)
        element.area = element.territoryAreaDto.map((res: any) => res.area);
      }
    })
    return items;
  } 

【讨论】:

  • 您可能需要编辑 sn-p 以排除 return items; 下方的三个 `
猜你喜欢
  • 2019-09-05
  • 2013-06-19
  • 1970-01-01
  • 2018-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-16
相关资源
最近更新 更多