js实现的类似php的print_r输出换行功能

发布时间:2020-09-03编辑:脚本学堂
js实现的类似php的print_r输出换行功能,供大家学习参考。

js实现的类似php的print_r输出换行功能,供大家学习参考。
 

复制代码 代码如下:
<script type="text/javascript">
<!--
var my={
str:'',
deep:0,
block:' ',
get_pre:function(n)
{
pre='';
for(i=0;i<n;i++)
{
pre+=this.block;
}
return pre;
},
show_obj:function(obj)
{
for(k in obj)
{
if(typeof(obj[k])!='object' && typeof(obj[k])!='array')
{
pre=this.get_pre(this.deep);
this.str+=pre+k+'=>'+obj[k]+'n';
}
else if(typeof(obj[k])=='object' && typeof(obj[k].length)=='undefined')//如果是对象
{
pre=this.get_pre(this.deep);
this.str+=pre+k+'=>OBJECT{n';
this.deep++;//开始递归,深度+1
this.show_obj(obj[k]);
pre = this.get_pre(this.deep);
this.deep--;//递归结束一个 深度-1
this.str+=pre+'}n';
}
else if(typeof(obj[k])=='object' && typeof(obj[k].length)!='undefined')//如果是数组
{
pre=this.get_pre(this.deep);
this.str+=pre+k+'=>ARRAY[n';
this.deep++;//同对象
this.show_obj(obj[k]);
pre = this.get_pre(this.deep);
this.deep--;//同对象
this.str+=pre+']n';
}
}
return this.str;
},
alert_obj:function(obj)
{
alert(this.show_obj(obj))
}
}
my.alert_obj({a:{b:{c:{d:'hello world'}}}});
//-->
</script>