js调试中经常会碰到输出的内容是对象而无法打印的时候,光靠alert只能打印出object标示,却不能打印出来里面的内容,甚是不方便,于是各方面整理总结了如下一个函数,能够将数组或者对象这类的结果一一打印出来,具体代码如下:
function writeObj(obj){ var description = \"\"; for(var i in obj){ var property=obj[i]; description+=i+\" = \"+property+\"\\n\"; } alert(description); }
另外当你需要将object对象转换为string字符串。
有下面这个函数就好了,可以将其转化为字符串类型,然后就可以打印出来了,具体代码如下:
function obj2string(o){ var r=[]; if(typeof o==\"string\"){ return \"\\\"\"+o.replace(/([\\\'\\\"\\\\])/g,\"\\\\$1\").replace(/(\\n)/g,\"\\\\n\").replace(/(\\r)/g,\"\\\\r\").replace(/(\\t)/g,\"\\\\t\")+\"\\\"\"; } if(typeof o==\"object\"){ if(!o.sort){ for(var i in o){ r.push(i+\":\"+obj2string(o[i])); } if(!!document.all&&!/^\\n?function\\s*toString\\(\\)\\s*\\{\\n?\\s*\\[native code\\]\\n?\\s*\\}\\n?\\s*$/.test(o.toString)){ r.push(\"toString:\"+o.toString.toString()); } r=\"{\"+r.join()+\"}\"; }else{ for(var i=0;i<o.length;i++){ r.push(obj2string(o[i])) } r=\"[\"+r.join()+\"]\"; } return r; } return o.toString(); }
以上两步骤就能完成js打印object对象,希望对大家的学习有所帮助。
本文地址:https://www.stayed.cn/item/2676
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我