1

我想从以下 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{$0.date < $1.date}.enumerated().map {Array($0.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”]]

在此先感谢您的任何建议。

4

1 回答 1

2

代替

let dates = myprices.sorted{$0.date < $1.date}.enumerated().map {Array($0.element.date)}

let dates = myprices.sorted{$0.date < $1.date}.map { $0.date }

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

于 2020-07-14T13:00:09.123 回答