js打印object对象中拥有的方法名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js打印object对象中拥有的方法名相关的知识,希望对你有一定的参考价值。
参考技术A js调试中经常会碰到输出的内容是对象而无法打印的时候,光靠alert只能打印出object标示,却不能打印出来里面的内容,甚是不方便,于是各方面整理总结了如下一个函数,能够将数组或者对象这类的结果一一打印出来,具体代码如下:function writeObj(obj) var description = ""; for(var i in obj) var property=obj[i]; description+=i+" = "+property+""; ;
另外当你需要将object对象转换为string字符串。 参考技术B 对象中拥有的方法名可以通过Object.getOwnPropertyNames方法来获取,这个方法会返回一个字符串数组,包含了对象中所有的方法名。
JS打印对象的方法&将Object转换为String的函数
1、有时候需要把对象中的字段属性打印出来,下面用JS实现输出对象:
1 function writeObj(obj) { 2 var description = ""; 3 for (var i in obj) { 4 var property = obj[i]; 5 description += i + " = " + property + "\n"; 6 } 7 alert(description); 8 }
2、结果对象是object而无法查看该对象里面的内容,用下面的函数,可以将其转化为字符串类型,然后就可以打印出来了,具体代码如下:
1 function obj2string(o){ 2 var r=[]; 3 if(typeof o=="string"){ 4 return "\""+o.replace(/([\‘\"\\])/g,"\\$1").replace(/(\n)/g,"\\n").replace(/(\r)/g,"\\r").replace(/(\t)/g,"\\t")+"\""; 5 } 6 if(typeof o=="object"){ 7 if(!o.sort){ 8 for(var i in o){ 9 r.push(i+":"+obj2string(o[i])); 10 } 11 if(!!document.all&&!/^\n?function\s*toString\(\)\s*\{\n?\s*\[native code\]\n?\s*\}\n?\s*$/.test(o.toString)){ 12 r.push("toString:"+o.toString.toString()); 13 } 14 r="{"+r.join()+"}"; 15 }else{ 16 for(var i=0;i<o.length;i++){ 17 r.push(obj2string(o[i])) 18 } 19 r="["+r.join()+"]"; 20 } 21 return r; 22 } 23 return o.toString(); 24 }
以上是关于js打印object对象中拥有的方法名的主要内容,如果未能解决你的问题,请参考以下文章
我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印内容带有文件文件名方法名行号 等信息,方便定位日志输出的地方