在cocos2d-x-3.16版本中使用console.log打印时,有时可能因为字符串太长打印不了,封装一个接口用于打印多种情况
HelpTool.log = function() {
var objToString = function(obj, str) {
str = str || "";
if(typeof obj === "string" || typeof obj === "number" || typeof obj === "boolean") {
str += "\n" + obj;
} else if(typeof obj === "object") {
try {
str += "\n" + JSON.stringify(obj, null, 4);
} catch(e) {
HelpTool.printError(e);
}
}
return str;
};
var str = ">>>>";
for(var key in arguments) {
var arg = arguments[key];
str += objToString(arg);
}
var max_line = 1400;
var pos = str.indexOf("\n");
for(var i = 0; i < max_line; i++) {
pos = str.indexOf("\n", pos + 1);
if(pos < 0) {
break;
}
}
if(pos > 0) {
str = str.slice(0, pos);
}
str += "\n";
console.log(str);
};