将json对象转换为字符串的方法


Posted in Javascript onFebruary 20, 2014
/* 
将json对象转换为字符串 
使用方法: 
var json = {id=3,name="abc"}; 
var str = tools.j2s(json); 
*/ 
tools.j2s = function(O) { 
var S = []; 
var J = ""; 
if (Object.prototype.toString.apply(O) === '[object Array]') { 
for ( var i = 0; i < O.length; i++) { 
S.push(this.j2s(O[i])); 
} 
J = '[' + S.join(',') + ']'; 
} else if (Object.prototype.toString.apply(O) === '[object Date]') { 
J = "new Date(" + O.getTime() + ")"; 
} else if (Object.prototype.toString.apply(O) === '[object RegExp]' || Object.prototype.toString.apply(O) === '[object Function]') { 
J = O.toString(); 
} else if (Object.prototype.toString.apply(O) === '[object Object]') { 
for ( var i in O) { 
var tempObj = ""; 
if(typeof (O[i]) == 'string') { 
tempObj = '"' + O[i] + '"'; 
} else if(typeof (O[i]) === 'object') { 
tempObj = this.j2s(O[i]); 
} else { 
tempObj = O[i]; 
} 
S.push('"' + i + '":' + tempObj); 
} 
J = '{' + S.join(',') + '}'; 
} else if (Object.prototype.toString.apply(O) === '[object String]') { 
J = '"' + O + '"'; 
} else { 
J = O; 
} 
return J; 
}; 
//json字符串转换为json对象 
tools.s2j = function(jsonString) { 
if(jsonString == null || jsonString == "" ) { 
jsonString = "{}"; 
} 
return eval('('+jsonString+')'); 
}; 
//JSON字符串到Object 
tools.json2Obj = function(_json) { 
if (_json == '') { 
//alert("函数初始化失败!"); 
return ""; 
} 
return eval("({root:"+_json+"})"); 
};
Javascript 相关文章推荐
弹出广告特效代码(一个IP只弹出一次)
May 11 Javascript
jQuery 使用手册(六)
Sep 23 Javascript
在html页面上拖放移动标签
Jan 08 Javascript
javascript顺序加载图片的方法
Jul 18 Javascript
jquery实现垂直和水平菜单导航栏
Aug 27 Javascript
jQuery 局部div刷新和全局刷新方法总结
Oct 05 Javascript
js实现敏感词过滤算法及实现逻辑
Jul 24 Javascript
Vue项目History模式404问题解决方法
Oct 31 Javascript
vue.js仿hover效果的实现方法示例
Jan 28 Javascript
详解用场景去理解函数柯里化(入门篇)
Apr 11 Javascript
vue实现图片上传预览功能
Dec 23 Javascript
vue点击按钮动态创建与删除组件功能
Dec 29 Javascript
javascript实现json页面分页实例代码
Feb 20 #Javascript
Jquery中的层次选择器与find()的区别示例介绍
Feb 20 #Javascript
页面加载完毕后滚动条自动滚动一定位置
Feb 20 #Javascript
Js表格万条数据瞬间加载实现代码
Feb 20 #Javascript
使用js实现一个可编辑的select下拉列表
Feb 20 #Javascript
js获取指定的cookie的具体实现
Feb 20 #Javascript
js获取和设置属性的方法
Feb 20 #Javascript
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
PHP+JS+rsa数据加密传输实现代码
2011/03/23 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
关于IFRAME 自适应高度的研究
2006/07/20 Javascript
javascript 防止刷新,后退,关闭
2010/08/07 Javascript
jquery学习总结(超级详细)
2014/09/04 Javascript
Jquery实现由下向上展开效果的例子
2014/12/08 Javascript
同一个网页中实现多个JavaScript特效的方法
2015/02/02 Javascript
JavaScript搜索字符串并将搜索结果返回到字符串的方法
2015/04/06 Javascript
javascript实现下班倒计时效果的方法(可桌面通知)
2015/07/10 Javascript
javascript仿百度输入框提示自动下拉补全
2016/01/07 Javascript
js基于setTimeout与setInterval实现多线程
2016/06/17 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
AngularJS入门教程之更多模板详解
2016/08/19 Javascript
解决ajax不能访问本地文件问题(利用js跨域原理)
2017/01/24 Javascript
jquery横向纵向鼠标滚轮全屏切换
2017/02/27 Javascript
前端把html表格生成为excel表格的实例
2017/09/19 Javascript
JS中Object对象的原型概念基础
2018/01/29 Javascript
从理论角度讨论JavaScript闭包
2019/04/03 Javascript
JS开发自己的类库实例分析
2019/08/28 Javascript
Vue 实现分页与输入框关键字筛选功能
2020/01/02 Javascript
Python 列表(List)操作方法详解
2014/03/11 Python
使用python实现递归版汉诺塔示例(汉诺塔递归算法)
2014/04/08 Python
深入理解 Python 中的多线程 新手必看
2016/11/20 Python
python获取当前运行函数名称的方法实例代码
2017/04/06 Python
Python实现简单过滤文本段的方法
2017/05/24 Python
深入理解Python异常处理的哲学
2019/02/01 Python
python实现得到当前登录用户信息的方法
2019/06/21 Python
python:按行读入,排序然后输出的方法
2019/07/20 Python
西班牙多品牌鞋店连锁店:Krack
2018/11/30 全球购物
土木工程师岗位职责
2013/11/24 职场文书
播音主持专业个人自我评价
2014/01/09 职场文书
抵押贷款承诺书
2014/05/30 职场文书
房贷工资证明范本
2015/06/12 职场文书
Redis集群新增、删除节点以及动态增加内存的方法
2021/09/04 Redis
深入解读Java三大集合之map list set的用法
2021/11/11 Java/Android