私はこれで頭を悩ませてきました.喜びのない多くの再帰関数でこれを解決しようとしました.
JSON と配列が混在するオブジェクトがあります。要するに、配列を削除する必要がありますが、配列が最初に見つかった場所の値を保持する必要があります。
オブジェクト/配列の console.log は次のとおりです。
オブジェクト {タイプ: 配列[1]、プロパティ: オブジェクト}
- プロパティ: オブジェクト
-
- 関連付けられたメディア: 配列 [1]
-
- 0: オブジェクト
-
- プロパティ: オブジェクト
-
- URL: 配列[1]
-
- 0: "/プログラム/p00t64w.emp"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- タイプ: 配列[1]
-
- 0: "メディアオブジェクト"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- 長さ: 1
- プロト: 配列[0]
- アーティスト: アレイ[1]
-
- 0: オブジェクト
-
- プロパティ: オブジェクト
-
- 名前: 配列[1]
-
- 0:「人を育てる」
- 長さ: 1
- プロト: 配列[0]
- URL: 配列[1]
-
- 0: "/音楽/アーティスト/e0e1a584-dd0a-4bd1-88d1-c4c62895039d"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- タイプ: 配列[1]
-
- 0: "音楽グループ"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- 長さ: 1
- プロト: 配列[0]
- 画像: 配列[1]
-
- 0: "/radio1/chart/artwork/ussm11002931.jpg"
- 長さ: 1
- プロト: 配列[0]
- 名前: 配列[1]
-
- 0:「パンプド・アップ・キック」
- 長さ: 1
- プロト: 配列[0]
- パブリケーション: 配列[1]
-
- 0: オブジェクト
-
- プロパティ: オブジェクト
-
- partOfSeries: 配列[1]
-
- 0: オブジェクト
-
- プロパティ: オブジェクト
-
- 名前: 配列[1]
-
- 0:「ローレン・ラバーン」
- 長さ: 1
- プロト: 配列[0]
- URL: 配列[1]
-
- 0: "/プログラム/b00c000j"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- タイプ: 配列[1]
-
- 0:「シリーズ」
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- 長さ: 1
- プロト: 配列[0]
- publishedOn: 配列[1]
-
- 0: オブジェクト
-
- プロパティ: オブジェクト
-
- 名前: 配列[1]
-
- 0:「BBCラジオ6ミュージックより」
- 長さ: 1
- プロト: 配列[0]
- URL: 配列[1]
-
- 0: "/6music/"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- タイプ: 配列[1]
-
- 0: "ブロードキャストサービス"
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- タイプ: 配列[1]
-
- 0:「エピソード」
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
- タイプ: 配列[1]
-
- 0:「音楽録音」
- 長さ: 1
- プロト: 配列[0]
- proto : オブジェクト
目的の変換は次のコードのようになりますが、たとえば、「プロパティ」が残っていて、すべての配列をオブジェクトに取り除く必要がある場合は、大きな問題にはなりません。
{
'associatedMedia': {
'url':'/programmes/p00t64wh.emp',
'type':'MediaObject'
},
'byArtist': {
'name':'Foster the People',
'url':'/music/artists/e0e1a584-dd0a-4bd1-88d1-c4c62895039d',
'type':'MusicGroup'
},
'publication': {
'publishedOn':{
'name':'From BBC Radio 6 Music',
'url':'/6music/',
'type':'BroadcastService'
},
'partOfSeries':{
'name':'Lauren Laverne',
'url':'programmes/b00c000j',
'type':'Series'
}
'type':'http://schema.org/Episode'
}
'image':'/radio1/chart/artwork/ussm11002931.jpg',
'name':'Pumped up Kicks',
'type':'MusicRecording'
}
すべてのキーと値は動的に割り当てられますが、変換する必要があるオブジェクトは次のようになります: オブジェクト > キー/値 > 0 > プロパティ > キー/値
助けてくれてありがとう:)