文档章节

js如何打印object对象,再也不怕找不到对象了

lwaif
 lwaif
发布于 2015/12/12 13:03
字数 312
阅读 315
收藏 7

js调试中经常会碰到输出的内容是对象而无法打印的时候,光靠alert只能打印出object标示,却不能打印出来里面的内容,甚是不方便,于是各方面整理总结了如下一个函数,能够将数组或者对象这类的结果一一打印出来,具体代码如下:

?
1
2
3
4
5
6
7
8
functionwriteObj(obj){
 vardescription ="";
 for(variinobj){
  varproperty=obj[i];
  description+=i+" = "+property+"\n";
 }
 alert(description);
}

另外当你需要将object对象转换为string字符串

有下面这个函数就好了,可以将其转化为字符串类型,然后就可以打印出来了,具体代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
functionobj2string(o){
 varr=[];
 if(typeofo=="string"){
  return"\""+o.replace(/([\'\"\\])/g,"\\$1").replace(/(\n)/g,"\\n").replace(/(\r)/g,"\\r").replace(/(\t)/g,"\\t")+"\"";
 }
 if(typeofo=="object"){
  if(!o.sort){
   for(variino){
    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(vari=0;i<o.length;i++){
    r.push(obj2string(o[i]))
   }
   r="["+r.join()+"]";
  }
  returnr;
 }
 returno.toString();
}

以上两步骤就能完成js打印object对象,希望对大家的学习有所帮助。

© 著作权归作者所有

共有 人打赏支持
lwaif
粉丝 6
博文 142
码字总数 19347
作品 0
深圳
私信 提问
加载中

评论(2)

纳兰清风
纳兰清风
console.log
开源中国最帅没有之一
开源中国最帅没有之一
请用chrome
一个后端眼中的js对象和原型链

js对象 js中的类型有: 所以对象可以这么分类: 函数对象(function) 其他对象 所以函数对象可以大声唱我们不一样,既然不一样肯定得有一点不一样的烟火,函数对象的不一样在什么地方呢?每一...

trayvon
2017/10/19
0
0
JavaScript初学者必看“this”

译者按: JavaScript的和Java等面向对象语言中的大不一样,、和函数更是将的灵活度进一步延伸。 原文: JavaScript: The Keyword ‘This’ for Beginners 译者: Fundebug 为了保证可读性,本文...

Fundebug
2017/05/17
0
0
利用 Cosole 来学习、调试JavaScrip

一 什么是 Console Console 是用于显示 JS和 DOM 对象信息的单独窗口。并且向 JS 中注入1个 Console 对象,使用该对象 可以输出信息到 Console 窗口中。 二 什么浏览器支持 Console 很多人可...

MrMign
2011/11/01
0
2
判断javascript数组的方法

判断javascript数组的方法 var is_array=function(){ return value && } 我们知道,javascript是一种弱类型的语言,并且,javascript中的一切实质上都是对象。那么,在javascript中如何进行对...

首席xx师
2013/06/06
0
2
jQuery链式操作实现原理 (Array-Like Object)

1.通过数组方式支持连写 JavaScript 中可以设计一种用起来像 Array 的对象,今天小测试了一下: var a = ['ab', 'ac', 'add'];a.replace = function ( c, v ) { this[i] = this[i].replace(...

i33
2012/11/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
4
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
8
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
12
0
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

xiaolyuh
今天
6
0
dubbo 搭建与使用

官网:http://dubbo.apache.org/en-us/ 一,安装监控中心(可以不安装) admin管理控制台,monitor监控中心 下载 bubbo ops 这个是新版的,需要node.js环境,我没有就用老版的了...

小兵胖胖
今天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部