从 JSON 创建日期数组

Create Array of Dates from JSON

我想根据以下 JSON.

创建日期数组(或包含索引和数据的元组)

我的代码正在创建一个数组,但它没有创建日期数组,而是将日期分解为字符。我需要做什么才能创建仅包含日期的数组。

JSON 看起来像:

let json = """
    [{"date":"2017-01-05",
     "price":119.34},{"date":"2017-01-06",
     "price":118.93}];

代码是:

let myprices = try JSONDecoder().decode([Prices].self, from: Data(json.utf8))
let dates = myprices.sorted{[=12=].date < .date}.enumerated().map {Array([=12=].element.date)}

代码打印到控制台为:

日期[[“2”、“0”、“1”、“7”、“-”、“0”、“1”、“-”、“0”、“5”]、[ "2", "0", "1", "7", "-", "0", "1", "-", "0", "6"], ["2", "0", "1", "7", "-", "0", "1", "-", "0"]]

提前感谢您的任何建议。

替换

let dates = myprices.sorted{[=10=].date < .date}.enumerated().map {Array([=10=].element.date)}

let dates = myprices.sorted{[=11=].date < .date}.map { [=11=].date }

目前您可能正在 let data:String 将其更改为 let date:Date 并为解码器检查提供格式化程序 This