打印javascript对象可参考:
logObj = function (obj, indent) {
if(typeof(obj) != 'object') {
return;
}
var print_func = function(str) {
cc.log(str); // 打印方法,替换相应的即可
};
indent = indent ? indent : 0;
for(var k in obj) {
var v = obj[k];
var t_v = typeof(v);
var szPrefix = "";
for(var i = 0; i < indent; ++i) {
szPrefix += "\t";
}
var formatting = szPrefix + "[" + k + "]" + " = ";
if(t_v == 'object') {
formatting += "{";
print_func(formatting);
logObj(v, indent + 1);
print_func(szPrefix + "},");
}else if(t_v == 'string') {
formatting += "\"" + v + "\"" + ",";
print_func(formatting);
}else if(t_v == 'function') {
formatting += "function,";
print_func(formatting);
}else if(t_v == 'undefined') {
formatting += "undefined,";
print_func(formatting);
}else {
formatting += v.toString() + ",";
print_func(formatting);
}
}
};
打印结果类似于:
JS: [0] = {
JS: [id] = 1,
JS: [name] = "新手场",
JS: [roomList] = {
JS: [0] = {
JS: [id] = 1,
JS: [name] = "房间1",
JS: },
JS: [1] = {
JS: [id] = 2,
JS: [name] = "房间2",
JS: },
JS: },
JS: },
JS: [1] = {
JS: [id] = 2,
JS: [name] = "初级场",
JS: [roomList] = {
JS: [0] = {
JS: [id] = 1,
JS: [name] = "房间1",
JS: },
JS: [1] = {
JS: [id] = 2,
JS: [name] = "房间2",
JS: },
JS: },
JS: },