Wollen Sie das Array von Zeichenfolgen für einen Schlüsseltitel von unten JSON-Antwortformat erhalten. Ich möchte keine Iteration oder Schleife verwenden.Filter JSON Data Swift
Erwartet: Array - ["Äpfel", "Banana", "Orange"].
Wollen Sie das Array von Zeichenfolgen für einen Schlüsseltitel von unten JSON-Antwortformat erhalten. Ich möchte keine Iteration oder Schleife verwenden.Filter JSON Data Swift
Erwartet: Array - ["Äpfel", "Banana", "Orange"].
Siehe das folgende Beispiel. Sie können Array von 'Titeln' mit flatMap
Func erhalten.
let json = [
[
"kind": "books#volume",
"id": "D7bKNFMXNOAC",
"volumeInfo": [
"title": "Apples",
"other":"Value"
]
],
[
"kind": "books#volume",
"id": "HGHGDKJSDKJH",
"volumeInfo": [
"title": "Banana",
"other":"Value"
]
],
[
"kind": "books#volume",
"id": "JFHDFHKSHFD",
"volumeInfo": [
"title": "Orange",
"other":"Value"
]
]
]
let titles = json.flatMap { ($0["volumeInfo"] as! [String : Any])["title"] }
print(titles) //["Apples", "Banana", "Orange"]
Danke, Bhaustik, Unten auch für mich arbeiten. '// 4. Filter all volumeInfo Dictionary Lassen Sie arrayVolumeInfo = arrayAllRecords.mutableArrayValue (forKey: "volumeInfo") // 5. Filter, um alle Titel zu erhalten titles = arrayVolumeInfo.mutableArrayValue (forKey: "title") ' –
Zeigen Sie uns, was Sie versucht haben, Wie Sie diese JSON bekommen. –
'wenn lassen Sie info = versuchen? JSONSerialization.jsonObject (mit: Daten als Daten) { // 3. Wählen Sie alle Elemente aus der Antwort lost arrayAllRecords = (info als? NSDictionary) ?. object (forKey: "items") as! NSArray // 4. Filter all volumeInfo Dictionary Lassen Sie arrayVolumeInfo = arrayAllRecords.mutableArrayValue (forKey: "volumeInfo") // 5. Filter, um alle Titel zu erhalten titles = arrayVolumeInfo.mutableArrayValue (forKey: "title") } ' –