JSON对象 javscript对象 解析JSON 序列化JSON

在ajax交互的时候咱们只须要拿到数据(主要是JSON)去渲染处理逻辑就能够,不须要对JSON有详细的了解,可是有时候后台接口开发没有完成,须要写伪代码的时候咱们能够本身手动造一些假数据,这样就能够模拟交互。ajax必定要跑在服务器环境下才能发请求。javascript

一:JSON初探java

  • JSON是一种数据格式,不是一门语言。虽然和js打交道,但并不从属于js,不少编程语言都有对JSON的解析器和序列化器。
  • JSON能够表示简单值(能够表示字符串、数值、布尔值、和null不能表示undefined),对象(键值对),数组。
  • JSON符合不符合语法?能够经过在线监测工具检测推荐:http://www.json.cn

 二:常遇到的坑ajax

  1. JSON对象和javascript对象有的区别下面举例子: 
//js声明对象的方式:
	1.经过自变量的形式
	  var preson={name:'hwb',age:25,form:'山西'};//结尾加分号
	  //也能够是:(单引号和双引号均可以)
	  var preson={'name':'hwb','age':25,'form':'山西'};
	2.var obj=new Object()
	      obj.name='hwb';
	      obj.age=25;
	      obj.from='山西';
	//JSON的对象表示法:属性必须用双引号包起来
	1.{
		"name":'hwb',
		"age":25,
		"form":'山西'
	  }//结尾不能有分号不然校验的时候会报语法错误。

   与js不一样,JSON中对象的属性任什么时候候都必须加双引号。手工编写JSON时,忘了给对象属性名加双引号或者把双引号写成单引号都是常见的错误。(这些都是从javascript高级程序设计第三版中看到的,这本书的第564页有错误,前面说的要加双引号,它后面举例子(JSON数组)的时候就有的地方没有加,他妈的还觉得我又理解错了,因而把它的JSON手动敲出来去校验果真没经过,书里面也有错误啊。)编程

   2.一直用jquaery的ajax方法就自动把服务器返回的JSON字符串(带引号的JSON)解析。一句话就是把带引号的JSON串解析成原生javascript值。 那么封装原生ajax的时候就不免要对JSON进行解析。json

  •     一种是用eval()  不推荐使用eva()不安全(可能会执行写恶意代码)。
  •     ES5对解析JSON进行了规范,定义了全局对象JSON。(ie8+支持),利用该对象下的JSON.parse()能够对JSON进行解析。
  • 只知道JSON.parse()殊不知道JSON.stringify(),它的做用是和JSON.parse()相反一个是把javascript对象序列化成JSON字符串,一个是把JSON字符串解析成原生javascript值。  

    3.对于JSON.parse()解析的时候能够传的参数也就是选项和JSON.stringify()序列化的时候传的参数比较少用,这两个方法都有一些选项,经过它们,能够改变过滤的方式或者改变序列化的过程。这里就不作解释了。网上的具体解释也不少数组

相关文章
相关标签/搜索