我有一个Dart的Map
,我正在从JSON格式转换它,它本身包含嵌套的Map。不幸的是,由于这些数据来自我无法控制的Web服务,有时某些嵌套值实际上是null。
例如,如果我有以下定义的值:
data = json.decode(response.body) as Map;
if (data["media_details"]["sizes"]["thumbnail"]["source_url"]
有时候["thumbnail"]
的值实际上是null。
除了繁琐地遍历Map并检查,是否有一种简洁的方法可以检查这些情况中的null呢?
if (data["media_details"] != null) {
if(data["media_details["sizes"] != null) {
//etc
我不确定Dart的空安全运算符在这种情况下是否有用,但如果有用我很想学习。
data["media_details"]["sizes"]["thumbnail"]?["source_url"]
,如果缩略图属性为null
,则结果为null
。 - lrn