每分钟我都会通过请求从网上商店检索以下数据。
{
['action'] = 'all',
['orders'] = { ['order'] = { [1] = { ['locationId'] = 1,
['id'] = 93,
['orderNumber'] = '3200'
}
}
},
['status'] = 'success'
}
从此表中,我需要使用代码读取的ID号:
IdNummer = Table.orders.order[1].id;
如果有命令,这有效
如果没有订单准备就绪,我将收到下表:
{
['action'] = 'all',
['orders'] = { ['order'] = {} },
['status'] = 'success'
}
由于“ id”不存在,因此出现错误:尝试为nil值建立索引(字段'?')如何检查“ id”是否存在而不会出现错误?
Table.orders.order[1]
是否存在,然后再尝试访问其id
字段。在lua中,未分配的字段具有nil
值。所以你可以做:
local orders = Table.orders.order
local IdNummer = nil
if orders[1] ~= nil then
IdNummer = orders[1].id;
end
请注意,在此示例中,如果索引不存在,IdNummer
的值为nil。