我在獲取 API 時遇到了麻煩,因為物件欄位名稱可能因一個物件而異,以及同一物件的子物件數量不同:
[
{
"name": {
"common": "Finland",
"official": "Republic of Finland",
"nativeName": {
"fin": {
"official": "Suomen tasavalta",
"common": "Suomi"
},
"swe": {
"official": "Republiken Finland",
"common": "Finland"
}
}
}
},
{
"name": {
"common": "Guatemala",
"official": "Republic of Guatemala",
"nativeName": {
"spa": {
"official": "República de Guatemala",
"common": "Guatemala"
}
}
}
}
]
這里nativeName的第一個孩子可以是spa或fin取決于物件,并且可以有一個或兩個(在其他情況下甚至更多)孩子。
我怎樣才能在這里獲得第一個nativeName的common價值?
另外,如何在 typescript 中輸入這些資料?到目前為止,我將其保留為:
type name = {
name: {
common: string,
official: string,
nativeName: {
var1: {
official: string,
common: string
},
var2: {
official: string,
common: string
}
}
}
}
提前致謝。
編輯:我意識到我有最后一個問題:
"languages": {
"spa": "Spanish"
}
這里spa的條目數量和條目數量不同languages,我將如何在打字稿中輸入?
uj5u.com熱心網友回復:
第一個問題:
const nameObj = {
"name": {
"common": "Finland",
"official": "Republic of Finland",
"nativeName": {
"fin": {
"official": "Suomen tasavalta",
"common": "Suomi"
},
"swe": {
"official": "Republiken Finland",
"common": "Finland"
}
}
}
}
const firstCommon = Object.values(nameObj.name.nativeName)[0].common
第二個問題:
type name = {
name: {
common: string,
official: string,
nativeName: {
[key: string]: {
official: string,
common: string
}
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/505205.html
上一篇:ServerXMLHTTP60WebAPI認證(特殊字符:&——“商業和”)
下一篇:“jsonPropertyValueQuery”ctsquery的選項“通配符”導致通過RESTAPI或在Marklogic查詢控制臺中呼叫的不同結果
