cocos2d-x技术群新群:117871561
c++技术交流群:593010226
这里不死抠cocos-lua组件的原理, 重在快速上手使用, 只针对快速开发,所以我尽量用简洁 易懂的 文笔去阐述。
在一个公司里能运用手上的知识 快速的完成一个功能才是最好的,也可已根据自己的能力和时间 去选择是不是要深入的了解这些组件及功能。毕竟还是需要下班充电的。
当然我的文章 也会根据我对cocos2d-lua的了解程度 不断更新,完善,希望对你有用
综述:JSON(javaScript Object Notation)轻量级数据交换格式
优点:传输速度快,传输流量少
结构:
1,对象
对象是一个“名称-值”对的集合 以{开始 以 }结束 每个名称后跟: 每个“名称-值”后用逗号隔开 如下:
{string:value,string:value}
示例:
{
“name”:“hanmeimei”,
"age":23,
"isgirl":true
}
2,数组
数组是值得有序集合 跟c,c++数组类似,数组的元素可以是string,number,object,array ,true,false,null
[value,value,......]
示例:
["lilei",true,null,6]
JSON解码
cocos2d-x lua封装了 JSON4Lua库 所以可以直接拿来用
解码函数json.decode(jsonObj)
--创建一个JSON对象
local jsonStr = {"name":"hanmeimei","age":23}
--解码对象
lcoal jsonObj =json.decode(jsonStr)
cclog("name%s:",jsonObj["name"])
cclog("age%d:",ojsonObj["age"])
--创建一个数组
local jsonStr =
[
{"name":"hanmeimei","age":23}
{"name":"lile","age":25}
]
--解码数组
local jsonArray = json.decode(jsonStr)
for i = 1, table.getn(jsonArray) do
local obj = jsonArray[i]
cclog("name%s:",obj["name"])
cclog("age%d:",obj["age"])
end
JSON编码
将JSON对象或数组转变为JSON字符串解析,以便于存储和网络中数据传输
编码函数json.encode(jsonObj)
编码对象
local jsonObj= {"name":"hanmeimei","age":23}
cclog("jsonObj:%s",json.encode(jsonObj))
编码数组
local jsonArray=
[
{"name":"hanmeimei","age":23}
{"name":"lile","age":25}
]
cclog("jsonArray:%s",json.encode(jsonArray))