博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
打印object对象
阅读量:5142 次
发布时间:2019-06-13

本文共 1051 字,大约阅读时间需要 3 分钟。

在测试条件一般js时间,假定数据接口返回object对象。
假设不知道这个对象里面详细的属性就取值easy得到undefined。
哪么怎么知道一个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();
}
function test() {
var obj=new Object();
obj.name="測试";
obj.age="20";
obj.sex="男";
alert(obj+"###"+obj2string(obj));
}
test();
上面这个样例我特意创建了一个object对象而且,打印了object和转换后的结果。

我们能够截图看一下2者的不同之处:

非常明显前者是一个object对象里面详细是什么不得而知,而后者则将他里面的属性暴露无疑。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/mfrbuaa/p/4621269.html

你可能感兴趣的文章
StringBuffer的用法
查看>>
js编写时间选择框
查看>>
PHP压缩文件操作
查看>>
Java数据结构和算法(四)--链表
查看>>
JIRA
查看>>
小技巧——直接在目录中输入cmd然后就打开cmd命令窗口
查看>>
深浅拷贝(十四)
查看>>
由级别和性格特征将程序员分类 ---看看你属于哪一种
查看>>
HDU 6370(并查集)
查看>>
BZOJ 1207(dp)
查看>>
PE知识复习之PE的导入表
查看>>
HDU 2076 夹角有多大(题目已修改,注意读题)
查看>>
洛谷P3676 小清新数据结构题(动态点分治)
查看>>
九校联考-DL24凉心模拟Day2T1 锻造(forging)
查看>>
洛谷 P3237 [HNOI2014]米特运输
查看>>
Attributes.Add用途与用法
查看>>
JavaScript面向对象初探——封装和继承
查看>>
L2-001 紧急救援 (dijkstra+dfs回溯路径)
查看>>
javascript 无限分类
查看>>
spring IOC装配Bean(注解方式)
查看>>