Lua为json.解码的数据添加值



我正在尝试将新数据插入json。我的json是;

data = {"one":44,"two":18}

arr_stock = json.decode(data)

我试图插入的数据是;

result = {"three":5}

我该怎么做?

我试过了;

arr_stock = arr_stock , result

但它不起作用。

arr_stock.three = 5

您应该首先确保解码json字符串确实成功,以避免出现错误。

关于您的代码:

data = {"one":44,"two":18}是无效语法。如果要将data用作json.decode的参数,则它必须是字符串,因为json.decode将把json字符串解码为Lua表。

data = '{"one":44,"two":18}'将是有效的Lua字符串。

result = {"three":5}相同

假设arr_stock是通过解码data成功获得的表,则arr_stock = arr_stock + result是无意义的。

除非实现了各自的元方法,否则不能添加表和字符串。这里要做的是在表中插入一个新字段,这是通过赋值完成的。

请参阅Lua手册https://www.lua.org/manual/5.4/

最新更新