有没有想过,当我们的大后台只是扮演一个数据库的角色,json在前后台的数据交换中扮演极其重要的角色时,作为依托node的前端开发,其实相当多的时间都是在处理数据,准确地说就是在处理逻辑和数据(这周实习最大的收获)。

  而对于依托json格式传输的数据,处理数据时,用到JSON.strinify和JSON.parse的概率是百分之百。使用这两个方法so easy,但是你真的知道其中一些相关的细节以及其中牵涉到的javascript的知识么?

  JSON.parse用于从一个字符串中解析出json对象。

  比如

var str = '{"name":"huangxiaojian","age":"23"}';
var str1 = JSON.parse(str);

  如果你在控制台输出str1,你会发现,输出的结果是

{ name="huangxiaojian", age="23"}

  也就是说,输出的是javascript对象。

  事实上,对于str这个字符串是很有讲究的。首先,它必须是个字符串,所以它肯定是被单引号括起来的,而且一般绝对是单引号,理由是:还有一个要求就是字符串的内容必须符合json格式,而json格式就是要求json对象中属性名必须添加双引号。

  下面举几个常见的例子:

//以下str都是无法parse成功的
var str = {"name": "xiaohu","age": 23}; //不是字符串 var str = '{"name": xiaohu,"age": 23}'; //xiaohu作为字符串没有加引号 var str = '{name: "xiaohu","age": 23}'; //name作为json数据的属性名没有加引号

  JSON.stringify用于从一个对象解析出字符串,说白了,就是把对象转换为字符串。

var a = {a:1,b:2};

var b = JSON.stringify(a);

  将b从控制台输出,你会看到{"a":1,"b":2},也就是说,JSON.stringify接收一个对象,将对象转换成一个字符串,神奇的是,这个结果字符串是满足json格式的。当然,这也就是JSON.stringify中的JSON存在的意义。

  JSON.parse和JSON.stringify注定协同工作。将一个不符合json格式的对象,通过JSON.stringify转换为符合json格式的字符串,然后通过JSON.parse转换为json对象。很多时候,JSON.stringify和JSON.parse就是彼此作为桥梁,完成参数格式的要求,以及转换成对象或字符串以方便完成后续特定的操作。:)

  

最新文章

  1. sql server CTE递归使用测试
  2. [解决方案] pythonchallenge level 4
  3. Android.os.NetworkOnMainThreadException
  4. C++转换构造函数与类型转换构造函数
  5. ModernUI教程:定义一个Logo
  6. AlwaysOn可用性组功能测试(二)--SQL Server群集故障转移对AlwaysOn可用性组的影响
  7. 日暮·第一章·决斗
  8. MongoDB (三) MongoDB 安装
  9. UITableView  折叠效果
  10. Hibernate逍遥游记-第13章 映射实体关联关系-004双向多对多(inverse="true")
  11. JavaScript自动关闭窗口
  12. 黑马程序员_Java基本数据类型对象包装类
  13. Sql Server相关的性能计数器
  14. matolop画图
  15. Java作业十(2017-11-8)
  16. 利用axure软件实现app中的轮播图功能
  17. python中经典类和新式类的区别
  18. Filter(1)—基础知识
  19. MySQL 烂笔头 备份和还原
  20. .NET MVC 学习笔记(三)— MVC 数据显示

热门文章

  1. jqure全选/取消
  2. MYSQL基础02(查询)
  3. Spring AOP整理
  4. C++ Maps 映射
  5. 洛谷 1865 A%B问题
  6. ARM寄存器的8种寻址方式01
  7. oracle连接和执行流程总结
  8. SequoiaDB数据库集群部署
  9. Oracle 摘去数据块的面纱
  10. linux c 打印彩色字符