json操作的bug

对于非连续的table:
情况1:
local t = {
= 56,
= 87
}
然后local str = json.encode(t),打印str得“”
此时是正常的
情况2:
local t = {
= 56,
= 87
}
然后local str = json.encode(t),打印str得nil

为什么在table索引不连续的情况下,存在索引超过10的,用json就无法解析????
不知道这个是不是bug?

这个是 lua 语言特性造成的。所以不要用数字索引。

lua的数字索引在不连续的时候,产生的行为是未定义的,不保证能作为正常数组使用

哦,谢谢两位

也就是说json的源码是没有问题的?

那我尽量少这样用…
(但是总觉得比较怪,可能是对lua还不太了解)

用JSON作為加密跟存檔, 結果加新功弋用上面說的用法存檔就被重置了 浪費了一堆時間

你可以把nil换成false 或者 0