将string解析为json的几种方式小结


Posted in Javascript onNovember 11, 2010

1.比较古老的方法:

function strToJson(str){ 
var json = eval('(' + str + ')'); 
return json; 
}

2.比较常用的方法:
function strToJson(str){ 
return (new Function("return " + str))(); 
}

3.IE67不支持的json对象方法:
function strToJson(str){ 
return JSON.parse(str); 
}

4.jQuery提供的方法:
parseJSON: function( data ) { 
if ( typeof data !== "string" || !data ) { 
return null; 
} 
data = jQuery.trim( data ); 
if ( /^[\],:{}\s]*$/.test(data.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@") 
.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]") 
.replace(/(?:^|:|,)(?:\s*\[)+/g, "")) ) { 
return window.JSON && window.JSON.parse ? 
window.JSON.parse( data ) : 
(new Function("return " + data))(); } else { 
jQuery.error( "Invalid JSON: " + data ); 
} 
},
Javascript 相关文章推荐
比较搞笑的js陷阱题
Feb 07 Javascript
node.js中的buffer.write方法使用说明
Dec 10 Javascript
《JavaScript函数式编程》读后感
Aug 07 Javascript
Jquery easyui 实现动态树
Nov 17 Javascript
jquery基础知识第一讲之认识jquery
Mar 17 Javascript
JS输出空格的简单实现方法
Sep 08 Javascript
Node.js websocket使用socket.io库实现实时聊天室
Feb 20 Javascript
HTML5+JS+JQuery+ECharts实现异步加载问题
Dec 16 jQuery
vue form 表单提交后刷新页面的方法
Sep 04 Javascript
Vue 实现列表动态添加和删除的两种方法小结
Sep 07 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
Sep 04 Javascript
vue实现随机验证码功能(完整代码)
Dec 10 Javascript
js读取本地excel文档数据的代码
Nov 11 #Javascript
JS维吉尼亚密码算法实现代码
Nov 09 #Javascript
网易JS面试题与Javascript词法作用域说明
Nov 09 #Javascript
浅谈Javascript嵌套函数及闭包
Nov 09 #Javascript
JavaScript高级程序设计 扩展--关于动态原型
Nov 09 #Javascript
关于JavaScript定义类和对象的几种方式
Nov 09 #Javascript
JS图片浏览组件PhotoLook的公开属性方法介绍和进阶实例代码
Nov 09 #Javascript
You might like
Yii 2.0如何使用页面缓存方法示例
2017/05/23 PHP
JavaScript中使用document.write向页面输出内容实例
2014/10/16 Javascript
javascript省市区三级联动下拉框菜单实例演示
2015/11/29 Javascript
BootStrap入门教程(一)之可视化布局
2016/09/19 Javascript
jqGrid翻页时数据选中丢失问题的解决办法
2017/02/13 Javascript
利用CDN加速react webpack打包后的文件详解
2018/02/22 Javascript
AjaxUpLoad.js实现文件上传功能
2018/03/02 Javascript
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
2018/07/31 jQuery
使用JavaScript实现node.js中的path.join方法
2018/08/12 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
2019/05/13 Javascript
Vue 2.0 侦听器 watch属性代码详解
2019/06/19 Javascript
VUE中使用HTTP库Axios方法详解
2020/02/05 Javascript
Vue双向数据绑定(MVVM)的原理
2020/10/03 Javascript
Python 用户登录验证的小例子
2013/03/06 Python
Python处理JSON数据并生成条形图
2016/08/05 Python
详解python实现线程安全的单例模式
2018/03/05 Python
python路径的写法及目录的获取方式
2019/12/26 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
python画环形图的方法
2020/03/25 Python
python中zip()函数遍历多个列表方法
2021/02/18 Python
阿提哈德航空官方网站:Etihad Airways
2017/01/06 全球购物
iHerb台湾:维生素、保健品和健康产品
2018/01/31 全球购物
中兴通讯全球官方网站:ZTE
2020/12/26 全球购物
超市5.1促销活动
2014/01/15 职场文书
员工安全承诺书
2014/05/22 职场文书
趣味运动会策划方案
2014/06/02 职场文书
管理提升方案
2014/06/04 职场文书
销售员岗位职责
2014/06/09 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
名人演讲稿范文
2014/09/16 职场文书
领导干部民主生活会自我剖析材料范文
2014/09/20 职场文书
2014年教育实习工作总结
2014/11/22 职场文书
2014年学校教学工作总结
2014/12/06 职场文书
幼儿园万圣节活动总结
2015/05/05 职场文书
阿甘正传观后感
2015/06/01 职场文书
北京大学中文系教授推荐的10本小说
2019/08/08 职场文书