Lua尝试对NIL字段建立索引

问题描述 投票:0回答:1

我已经搜索了答案,这应该很简单,但是我找不到解决方案。

我正在尝试索引来自太阳能逆变器的json对象的数据。

当逆变器运行时,PAC字段包含我想要的POWER AC值。当太阳落下时,该字段不会降为0,它会从API响应中完全消失,因此我的代码将引发错误,试图索引不存在的字段。

我如何捕获此错误并在不存在该字段的情况下返回0?

PAC = resp1.Body.Data.PAC.Value

我尝试过:

PAC = resp1.Body.Data.PAC.Value or 0

但是那不起作用。

api lua
1个回答
0
投票

如果PAC = resp1.Body.Data.PAC.Value导致索引nil值出错,PAC = resp1.Body.Data.PAC.Value or 0将导致相同的错误,因为您仍然索引相同的nil值。

我只能猜测resp1.Body.Data.PAC为零。

然后类似

PAC = resp1.Body.Data.PAC and resp1.Body.Data.PAC.Value or 0

将起作用。您应该找出什么是零。

© www.soinside.com 2019 - 2024. All rights reserved.