js 解析JSON数据

链接原文转自:http://www.w3cschool.cn/json/xumd1piw.html

                         http://www.cnblogs.com/zoumiaomiao/p/4909539.html

1、json数据:

JavaScript Object Notation(JavaScript 对象表示法);json是存储和交换文本信息的语法(类似于XML),是一种轻量级的文本数据交换格式,比XML更快更小更易解析。json数据的结构,json有两种结构:对象和数组

2、json数据的写法与原生的对象写法的区别:

对象字面量一般写法是:

var aa ={name:"zoumm",job :"it",age :25};

json对象写法:

{"name":"zoumm","job":"it","age":23,"school":{"name":"大学名",“add”:"中国"}}

因此:json对象不用定义变量,末尾不用写分号,切所有的属性名必须加双引号;

一般数组是这样定义的:

var aa = [23,"zoumm"];

json数组是这样定义的

[23,"zoumm"]

他们的区别是,json数组不用定义变量,末尾不用写分号;

3、为什么json数据要解析:json数据在传输的过程中是以文本格式存在的,即以字符串的形式存在,然而我们的js中操作的却是对象,因此我们必须将json数据解析成对象的操作,然后才能用对象对数据进行访问。

数据格式:

Json字符串:var json_str = ‘{"name":"xiao","age":12}';//单引号

Josn对象:var obj = {"name":"xiao","age":12};

JS对象:Object {name: "xiao", age: 12}

因此:要将Json字符串——>JS对象

4、json数据的解析:

a、JSON提供了json.js包,下载http://www.json.org/json.js 后,将其引入然后就可以简单的使用object.toJSONString()转换成JSON数据。

b、用eval()方法转换到Object,再obj.toJSONString()

function myEval() {

var str = '{ "name": "Violet", "occupation": "character" }';

var obj = eval('(' + str + ')');

alert(obj.toJSONString());

}

3、或者用parseJSON()方法,再obj.toJSONString()

注意:eval()是JS原生函数,使用该形式:eval(‘('+‘{name:"xiao",age:12}'+')'),并不安全,无法保证类型转换为JS对象;不建议使用

例子:

5、JS对象——>Json字符串:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.语言基础2.严格模式3.js组成(ECMAScript DOM BOM)4.各种(DOM BOM)例子5.组件...
    蒲公英_前端开发者阅读 1,559评论 0 3
  • 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。简单...
    舟渔行舟阅读 7,944评论 2 17
  • @转自GitHub 介绍js的基本数据类型。Undefined、Null、Boolean、Number、Strin...
    YT_Zou阅读 1,226评论 0 0
  • 于我个人来说,人生最好的休息方式乃是读书。这样的方式,其实很像土壤,就会任由生命的根须随意的发达,不固执,不勉强。...
    一号书房阅读 1,503评论 0 2
  • 昨晚10点一刻就睡下了,最近一心只想着怎么吃才不会长胖、怎么锻炼才能更瘦,一门心思全部扎在了如何减肥上~ 本月的目...
    Eileen卟啉卟啉阅读 242评论 0 0