JS中对象与字符串的互相转换详解


Posted in Javascript onMay 20, 2016

在使用 JSON2.JS 文件的 JSON.parse(data) 方法时候,碰到了问题:

throw new SyntaxError('JSON.parse');

查询资料,大概意思如下:

JSON.parse方法在遇到不可解析的字符串时,会抛出SyntaxError异常。

即:JSON.parse(text, reviver),This method parses a JSON text to produce an object or array. t can throw a SyntaxError exception.

所以,在这里在此总结一下 JS 中对象与字符串的互相转换,因为这涉及到浏览器兼容问题。

1:jQuery插件支持的转换方式

代码如下:

$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象

反过来,使用 serialize 系列方法:如:var fields = $("select, :radio").serializeArray();

2:浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器

代码如下:

JSON.parse(jsonstr); //可以将json字符串转换成json对象

JSON.stringify(jsonobj); //可以将json对象转换成json对符串

注:ie8(兼容模式),ie7和ie6没有JSON对象,需要引入 json.js 或 json2.js。

3:Javascript支持的转换方式

eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号

注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。

以上这篇JS中对象与字符串的互相转换详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在线编辑器中换行与内容自动提取
Apr 24 Javascript
实现连缀调用的map方法(prototype)
Aug 05 Javascript
Javascript Boolean、Nnumber、String 强制类型转换的区别详细介绍
Dec 13 Javascript
js下将阿拉伯数字每三位一逗号分隔(如:15000000转化为15,000,000)
Jun 02 Javascript
浅谈Sticky组件的改进实现
Mar 22 Javascript
Bootstrap CSS组件之按钮下拉菜单
Dec 17 Javascript
Node.js 8 中的 util.promisify的详解
Jun 12 Javascript
jquery基于layui实现二级联动下拉选择(省份城市选择)
Jun 20 jQuery
通过 JS 判断页面是否有滚动条的实现方法
Apr 05 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
Mar 12 Javascript
python虚拟环境 virtualenv的简单使用
Jan 21 Javascript
JQuery表单元素取值赋值方法总结
May 12 jQuery
JS 对象(Object)和字符串(String)互转方法
May 20 #Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
May 20 #Javascript
浅析JavaScript Array和string的转换(推荐)
May 20 #Javascript
深入理解JS addLoadEvent函数
May 20 #Javascript
用jQuery获取table中行id和td值的实现代码
May 19 #Javascript
jquery遍历table的tr获取td的值实现方法
May 19 #Javascript
jquery if条件语句的写法
May 19 #Javascript
You might like
PHP压缩html网页代码(清除空格,换行符,制表符,注释标记)
2012/04/02 PHP
Laravel框架中扩展函数、扩展自定义类的方法
2014/09/04 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
2015/12/31 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
javascript 写类方式之九
2009/07/05 Javascript
浅谈Sublime Text 3运行JavaScript控制台
2016/06/06 Javascript
利用jQuery来动态为属性添加或者删除属性的简单方法
2016/12/02 Javascript
Vue数据驱动模拟实现2
2017/01/11 Javascript
gulp加批处理(.bat)实现ng多应用一键自动化构建
2017/02/16 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
2017/03/03 Javascript
基于bootstrap实现收缩导航条
2017/03/17 Javascript
微信JSAPI Ticket接口签名详解
2020/06/28 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
bootstrap 通过加减按钮实现输入框组功能
2017/11/15 Javascript
基于Angularjs-router动态改变Title值的问题
2018/08/30 Javascript
编程语言Python的发展史
2014/09/26 Python
Python访问MySQL封装的常用类实例
2014/11/11 Python
asyncio 的 coroutine对象 与 Future对象使用指南
2016/09/11 Python
Django 添加静态文件的两种实现方法(必看篇)
2017/07/14 Python
Python 基础教程之闭包的使用方法
2017/09/29 Python
python操作excel的方法(xlsxwriter包的使用)
2018/06/11 Python
python实现批量视频分帧、保存视频帧
2019/05/31 Python
浅谈python已知元素,获取元素索引(numpy,pandas)
2019/11/26 Python
html5 Web SQL Database 之事务处理函数transaction与executeSQL解析
2013/11/07 HTML / CSS
戴森美国官网:Dyson美国
2016/09/11 全球购物
美国知名奢侈美容品牌零售商:Cos Bar
2017/04/21 全球购物
函授大专自我鉴定
2013/11/01 职场文书
会计专业职业规划:规划自我赢取未来
2014/02/12 职场文书
验房委托书
2014/08/30 职场文书
2014年实习期工作总结
2014/11/27 职场文书
2014年酒店年度工作总结
2014/12/10 职场文书
2015年班级工作总结范文
2015/04/03 职场文书
2015年外联部工作总结
2015/04/03 职场文书
公司仓库管理制度
2015/08/04 职场文书
初一英语教学反思
2016/02/15 职场文书
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL