JSONデータを迅速にフィルタリングする

user7225129

JSONデータを解析し、指定された条件を満たす配列にそれらのオブジェクトのみを追加しようとしています。現時点では、APIからすべてのオブジェクトをフェッチして配列に追加するコードをコメントアウトしています。ただし、「license_author」キーの「wger.de」値を持つオブジェクトのみを追加するように制限したいと思います。

ただし、オンラインでエラーが発生します。

if eachExercise["license_author"] == "wger.de"

二項演算子 '=='は、タイプ 'Any?'のオペランドには適用できません。および「文字列」ただし、APIから文字列と整数の両方のデータをフェッチしたいので、それでもAnyオブジェクトとして保持したいと思います。

これは私のparseData()関数のコードです:

func parseData() {

    fetchedExercise = []

    let urlPath = "https://wger.de/api/v2/exercise/?format=json&language=2&status=2"
    let url = URL(string: urlPath)!

    let task = URLSession.shared.dataTask(with: url) { (data, response, error) in

        if error != nil {
            print("Error while parsing JSON")
        }
        else {

            do {
                if let data = data,
                    let fetchedData = try JSONSerialization.jsonObject(with: data, options: .mutableLeaves) as? [String:Any],
                    let exercises = fetchedData["results"] as? [[String: Any]] {

                    // WORKING CODE
                    /*
                    for eachExercise in exercises
                    {

                        let name = eachExercise["name"] as! String
                        let description = eachExercise["description"] as! String

                        self.fetchedExercise.append(Exercise(name: name, description: description))

                    }
                    */

                    // TESTING
                    for eachExercise in exercises {
                        if eachExercise["license_author"] == "wger.de" {
                            let name = eachExercise["name"] as! String
                            let description = eachExercise["description"] as! String
                            let id = eachExercise["id"] as! Int

                            self.fetchedExercise.append(Exercise(name: name, description: description))
                        }
                    }


                    DispatchQueue.main.async {
                        self.tableView.reloadData()
                    }
                }
            }
            catch {
                print("Error while parsing data.")
            }
        }
    }
    task.resume()
}
ヴァディアン

where条項とオプションのダウンキャストAny使用しString

for eachExercise in exercises where eachExercise["license_author"] as? String == "wger.de" { ...

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

JSONデータをフィルタリングする方法は?

分類Dev

jqueryでJSONデータをフィルタリングする

分類Dev

JSONデータをフィルタリングするarduino

分類Dev

角度6のアルファベット順にJsonデータをフィルタリングするには

分類Dev

複数のキーでJSONデータをフィルタリングする

分類Dev

PythonのJSONスキーマに対してJSONデータをフィルタリングする

分類Dev

jqueryを使用してjsonデータをフィルタリングする方法

分類Dev

特定のプロパティと値に基づいてJSONデータをフィルタリングする

分類Dev

node.jsでJSONデータをフィルタリングする方法は?

分類Dev

Node.jsでJSONデータをフィルタリングする方法

分類Dev

Angular 8:localStorageでJSONデータをフィルタリングする方法

分類Dev

json配列から必要なデータをフィルタリングする

分類Dev

2つの値でJSONデータをフィルタリングする方法

分類Dev

Sparkデータフレームでjson配列データをフィルタリングする

分類Dev

迅速に正規表現で辞書キーをフィルタリングする方法

分類Dev

JSON応答でデータベースのフィールドをフィルタリングする方法は?

分類Dev

データのリストに関してデータフレームをフィルタリングする

分類Dev

日付範囲に基づいてJSONデータをフィルタリングするAngularjs

分類Dev

PHPでJSONエンコーディング/リターンを台無しにするファイルが必要

分類Dev

ReactNativeデータをフィルタリングする

分類Dev

MSSQLでデータをフィルタリングする

分類Dev

Tensorflowでデータをフィルタリングする

分類Dev

foreachでデータをフィルタリングする方法

分類Dev

Rshinyでデータをフィルタリングする方法

分類Dev

配列でデータをフィルタリングする

分類Dev

不要なデータをフィルタリングする JavaScript

分類Dev

SQLServerでデータをフィルタリングする

分類Dev

データをフィルタリングするcheckboxGroupInput

分類Dev

Spring RESTデータを適切にフィルタリングする方法

Related 関連記事

  1. 1

    JSONデータをフィルタリングする方法は?

  2. 2

    jqueryでJSONデータをフィルタリングする

  3. 3

    JSONデータをフィルタリングするarduino

  4. 4

    角度6のアルファベット順にJsonデータをフィルタリングするには

  5. 5

    複数のキーでJSONデータをフィルタリングする

  6. 6

    PythonのJSONスキーマに対してJSONデータをフィルタリングする

  7. 7

    jqueryを使用してjsonデータをフィルタリングする方法

  8. 8

    特定のプロパティと値に基づいてJSONデータをフィルタリングする

  9. 9

    node.jsでJSONデータをフィルタリングする方法は?

  10. 10

    Node.jsでJSONデータをフィルタリングする方法

  11. 11

    Angular 8:localStorageでJSONデータをフィルタリングする方法

  12. 12

    json配列から必要なデータをフィルタリングする

  13. 13

    2つの値でJSONデータをフィルタリングする方法

  14. 14

    Sparkデータフレームでjson配列データをフィルタリングする

  15. 15

    迅速に正規表現で辞書キーをフィルタリングする方法

  16. 16

    JSON応答でデータベースのフィールドをフィルタリングする方法は?

  17. 17

    データのリストに関してデータフレームをフィルタリングする

  18. 18

    日付範囲に基づいてJSONデータをフィルタリングするAngularjs

  19. 19

    PHPでJSONエンコーディング/リターンを台無しにするファイルが必要

  20. 20

    ReactNativeデータをフィルタリングする

  21. 21

    MSSQLでデータをフィルタリングする

  22. 22

    Tensorflowでデータをフィルタリングする

  23. 23

    foreachでデータをフィルタリングする方法

  24. 24

    Rshinyでデータをフィルタリングする方法

  25. 25

    配列でデータをフィルタリングする

  26. 26

    不要なデータをフィルタリングする JavaScript

  27. 27

    SQLServerでデータをフィルタリングする

  28. 28

    データをフィルタリングするcheckboxGroupInput

  29. 29

    Spring RESTデータを適切にフィルタリングする方法

ホットタグ

アーカイブ