<p>js调试中经常会碰到输出的内容是对象而无法打印的时候,光靠alert只能打印出object标示,却不能打印出来里面的内容,甚是不方便,于是各方面整理总结了如下一个函数,能够将数组或者对象这类的结果一一打印出来,具体代码如下:</p><pre class="brush:js;toolbar:false">functionwriteObj(obj){ vardescription=&quot;&quot;; for(variinobj){ varproperty=obj[i]; description+=i+&quot;=&quot;+property+&quot;n&quot;; } alert(description); }</pre><p>另外当你需要将object对象转换为string字符串。</p><p>有下面这个函数就好了,可以将其转化为字符串类型,然后就可以打印出来了,具体代码如下:</p><pre class="brush:js;toolbar:false">functionobj2string(o){ varr=[]; if(typeofo==&quot;string&quot;){ return&quot;&quot;&quot;+o.replace(/([&#39;&quot;\])/g,&quot;\$1&quot;).replace(/(n)/g,&quot;\n&quot;).replace(/(r)/g,&quot;\r&quot;).replace(/(t)/g,&quot;\t&quot;)+&quot;&quot;&quot;; } if(typeofo==&quot;object&quot;){ if(!o.sort){ for(variino){ r.push(i+&quot;:&quot;+obj2string(o[i])); } if(!!document.all&amp;&amp;!/^n?functions*toString()s*{n?s*[nativecode]n?s*}n?s*$/.test(o.toString)){ r.push(&quot;toString:&quot;+o.toString.toString()); } r=&quot;{&quot;+r.join()+&quot;}&quot;; }else{ for(vari=0;i&lt;o.length;i++){ r.push(obj2string(o[i])) } r=&quot;[&quot;+r.join()+&quot;]&quot;; } returnr; } returno.toString(); }</pre>
返回顶部 留言