js怎样打印object对象

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(); 
}
    原文作者:CodeMan
    原文地址: https://segmentfault.com/a/1190000008877444
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞