Lua脚本将空数组转换为对象

来源:爱站网时间:2021-09-16编辑:网友分享
Lua脚本将空数组转换为对象。如何避免转换。 test.lua本地json_str ='{\“ items \”:[],\“ properties \”:{}}'返回cjson.encode(cjson.decode(json_str))输出redis-cli --...

问题描述


Lua脚本将空数组转换为对象。如何避免转换。

test.lua

local json_str = '{\"items\":[],\"properties\":{}}'
return cjson.encode(cjson.decode(json_str))

输出

redis-cli --eval test.lua

“ {\” items \“:{},\” properties \“:{}}”]

项目是一个数组[],但输出是一个对象{}

思路:


JSON对象定义和lua表之间的主要区别是lua表没有类型数组。

空JSON数组[]或对象{}被转换为lua表{},但空lua表{}可以被转换为数组[]或对象{}。

据我所知,redis的cjson目前没有解决此问题的方法,Redis Lua Differetiating empty array and object中提到了可能的解决方法。 (我不能争论是否可行)

上一篇:如何使用SXSSF更改单元格颜色来编辑大数据的excel文件

下一篇:使用Visual Studio Code远程扩展运行JavaFX

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载