如何从Typescript中以#或@开头的属性获取JSON数据
Posted
技术标签:
【中文标题】如何从Typescript中以#或@开头的属性获取JSON数据【英文标题】:How to get JSON data from attributes that start with # or @ in Typescript 【发布时间】:2022-01-13 23:59:22 【问题描述】:我正在使用一个特定的 API,它返回类似于以下示例的 JSON。
我想获取包含 #text 和 @attr 的两个值,但是当我尝试获取这些值时,我在 typescript 中收到错误消息。
【问题讨论】:
究竟是什么错误?您访问此属性的代码是什么?请提供minimal complete reproducible example 请不要use images for code, data structures or log files 请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:嘿,对于 JSON,您可以通过其中的属性名称使用获取详细信息,并且对于以 @ 或 # 开头的全天候相同。
查看以下代码以获取指定键的值:
示例 JSON:
"weeklyalbumchart":
"album": [
"artist":
"mbid": "data",
"#text": "Flying Lotus"
,
"mbid": "data",
"url": "",
"name": "",
"@attr":
"rank": "1"
,
"playcount": "21"
,
"artist":
"mbid": "data",
"#text": "Flying Lotus"
,
"mbid": "data",
"url": "",
"name": "",
"@attr":
"rank": "1"
,
"playcount": "21"
]
读取 JSON:
@attr ===> json["weeklyalbumchart"]["album"][0]["@attr"]
#text ===> json["weeklyalbumchart"]["album"][0]["artist"]["#text"]
希望这能帮助你理解它。
【讨论】:
【参考方案2】:尝试使用,
album[0]["@attr"]
album[0]["artist"]["#text"]
【讨论】:
以上是关于如何从Typescript中以#或@开头的属性获取JSON数据的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Vue 中以 Typescript 语法定义使用 prop 作为其初始值的本地数据属性?
如何从索引中以字符串形式获取突出显示数据或如何将其打印出来?