JSON对象、JSON字符串的相互转换
JSON对象、JSON字符串的相互转换
json的格式:
第一种方式:
单一的json字符串,转换成json对象时,需要 eval('(' + json + ')');这样的格式,中间需要加括号
var json = '{ "username ": ' + "\"" + username + "\""
+ ', "性别":' + "\"" + sex + "\""
+ '}';
这里将json字符串转换成json对象有两种方法,分别是eval()和JSON.parse()(通常用eval)
1. var JSONObject = eval('(' + json + ')'); 将json字符串转换成json对象
2. var JSONObject = JSON.parse(json);
注意当用JSON.parse()时,可能会出现JSON未定义的页面js错误
解决方法:关闭浏览器兼容模式
数据访问方式:
var username = JSONObject.username ; var sex = JSONObject.sex ;
第二种:json数组
var jsonArr = ‘[{ "username ": username, "sex ": sex},{ "username ": username1, "sex ": sex1}]’;
和上面一样,将json字符串转换成json对象有两种方法,分别是eval()和JSON.parse()(通常用eval)
1. var JSONObject = eval(jsonArr); 将json字符串转换成json对象
2. var JSONObject = JSON.parse(JSON.stringify(jsonArr));
这里,将json数组转换成json对象时,parse时,必须传入的是字符串的格式,所以首先必须将数组对象解析成字符串,这里就用到了JSON.stringify(),将对象转换成字符串后,然后用JSON.parse()将json字符串转换成json对象
思路 :js数组对象-->字符串-->json对象
JSON.stringify():js数组对象转换后的字符串 "[{"\u59d3\u540d":"Alltas","\u6027\u522b":"\u7537","\u5e74\u9f84":"22"}]"
JSON.parse():将上述字符串转换成json对象
然后就可以利用json对象的属性来访问各属性的值了
属性就相当于key,值是value。Key-value键值对形式
数据访问:
var username = JSONObject[0].username ; var sex = JSONObject[0].sex ;
建议:属性用英文,尽量不要用中文。
第三种:json数组(与第二种略有区别)
var txt = '{"employees":[' +
'{"firstName":"Bill","lastName":"Gates" },' +
'{"firstName":"George","lastName":"Bush" },' +
'{"firstName":"Thomas","lastName":"Carter" }]}';
数据访问:
var obj = eval ("(" + txt + ")");
firstName = obj.employees[1].firstName
lastName = obj.employees[1].lastName
JSON对象、JSON字符串的相互转换的更多相关文章
- 第168天:json对象和字符串的相互转换
json对象和字符串的相互转换 1.json对象和字符串的转换 在Firefox,chrome,opera,safari,ie9,ie8等高级浏览器直接可以用JSON对象的stringify()和pa ...
- json对象与字符串的相互转换,数组和字符串的转换
1.json对象转换为字符串 JSON.stringify(value [, replacer] [, space]) var student = new Object(); student.id ...
- json对象和字符串的相互转换
JSON.stringify(obj) 将JSON对象转为字符串. JSON.parse(string) 将字符串转为JSON对象格式. 后台给你数据的时候,有时候会给你字符串 ...
- JSON对象与字符串之间的相互转换
<html> <head> <meta name="viewport" content="width=device-width" ...
- Json数组操作小记 及 JSON对象和字符串之间的相互转换
[{"productid":"1","sortindex":"2"},{"productid":&q ...
- JSON对象与字符串之间的相互转换 - CSDN博客
原文:JSON对象与字符串之间的相互转换 - CSDN博客 <html> <head> <meta name="viewport" content=& ...
- js或者jq的string类型或者number类型的相互转换及json对象与字符串的转换
1.将值乘以1,将string类型转为number类型 //算合计价值function summoney(money) { var zijin = $("#main_xm_dam09&quo ...
- js中的json对象和字符串之间的转化
字符串转对象(strJSON代表json字符串) var obj = eval(strJSON); var obj = strJSON.parseJSON(); var obj = JSO ...
- json对象转字符串与json字符串转对象
1.概述: 我们在编程时进场会遇到json对象转字符串,或者字符串转对象的情况. 2.解决办法: json.parse()方法是将json字符串转成json对象. json.stringfy()方法是 ...
- js字符串转json格式与json对象转字符串
json字符串----->json对象json对象------>json字符串 使用JSON.parse()函数 this.dataList = JSON.parse(dataList); ...
随机推荐
- SIFT中的高斯模糊
高斯模糊是众多模糊算法中的一种,所谓的模糊,就是平滑图像,消除像素之间的差异,最容易想到的方法就是均值平滑. .均值模糊 均值模糊就是取目标像素周围像素的平均值.譬如 像素矩阵. |1|1|1| |1 ...
- APICloud使用
APICloud-APP开发平台 [网址:]http://www.apicloud.com/ APICloud studio 下载 打开网址,找到开发者社区->文档->下载->开发工 ...
- mongoDB & Nodejs 访问mongoDB (一)
最近的毕设需要用到mongoDB数据库,又把它拿出来再学一学,下盘并不是很稳,所以做一些笔记,不然又忘啦. 安装 mongoDB & mongoVUE mongoDB: https://www ...
- 3016: [Usaco2012 Nov]Clumsy Cows
3016: [Usaco2012 Nov]Clumsy Cows Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 91 Solved: 69[Submi ...
- cordova crosswalk android 7.0 问题
带有crosswalk的cordova app 在Android7.0会闪退问题,为什么要crosswalk,我的回答是,还tmd不是要兼容5.0以下系统(4.4,4.2,4.0),这里省略100 ...
- webStorm Linux Ubuntu 中文搜狗输入问题
1 打开安装路径下bin/webstorm.sh vim ~/WebStorm-145.597.6/bin/webstorm.sh 2.在打开文件的最前面加入如下代码: export XMODIFIE ...
- linux codeblocks汉化
参考window汉化codeblocks,linux下有点麻烦,就是要找到codeblocks的文件安装在哪里.一般来说,linux下安装的软件大都在/usr/share/文件夹下,所以进入/usr/ ...
- spdlog源码阅读 (3): log_msg和BasicWriter
4. log_msg和它的打手BasicWriter 在spdlog源码阅读 (2): sinks的创建和使用中,提到log_msg提供了存储日志的功能.那么到底在spdlog中它是怎么 起到这个作用 ...
- 通过hue提交oozie定时任务
Oozie是什么? Oozie是一种Java Web应用程序,它运行在Java servlet容器——即Tomcat——中,并使用数据库来存储以下内容: 工作流定义 当前运行的工作流实例,包括实例的状 ...
- SpringMVC中@RequestBody引起的400异常处理,返回校验失败具体信息
问题 使用@RequestBody接收一个json数据的时候,如果传入的参数不符合条件,就会直接返回400的error page. 但究竟是为什么会400并没有抛出来.这对大量参数字段的我们来说,排错 ...