js解析与序列化json数据

一、前言:JSON对象有两个方法:stringify()和parse()。

二、介绍:在最简单的情况下,这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript。

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

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

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

2、另外还有eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码:

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

  提示:虽然 eval() 的功能非常强大,但在实际使用中用到它的情况并不多。

三、事例:

function init() 

  var book={
    title:"JavaScript高级程序设计",
    authors:[
      "Nicholas C. Zakas"
    ],
    edition:3,
    year:2011
  };
  var jsonBook=JSON.stringify(book);
  var objectBook=JSON.parse(jsonBook);

}

三、详解:

1、默认情况下,JSON.stringify()输出的JSON字符串不包含任何空字符或缩进,因此保存在jsonBook中的字符串如下所示:

  {"title":"JavaScript高级程序设计","authors":["Nicholas C. Zakas"],"edition":3,"year":2011}

2、在序列化JavaScript对象时,所有函数及原型成员都会被有意忽略,不体现在结果中。此外,值为undefined的任何属性也都会被跳过。结果中最终都是值为有效JSON数据类型的实例属性。

3、注意,虽然book与objectBook1具有相同的属性,但它们是两个独立的、没有任何关系的对象。如果传给JSON.parse()的字符串不是有效的JSON,该方法会抛出错误。

原文地址:https://www.cnblogs.com/summarize/p/8983865.html

时间: 2024-11-06 03:55:45

js解析与序列化json数据的相关文章

js解析与序列化json数据(一)json.stringify()的基本用法

对象有两个方法:stringify()和parse().在最简单的情况下,这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript; <html> <head> <title></title> <script type="text/javascript"> function init() { var book={ title:"JavaScript高级程序设计

mvc 使用Newtonsoft.Json进行序列化json数据

mvc 使用Newtonsoft.Json进行序列化json数据 JsonResult  使用js 序列号化,先集成扩展.使用newtonsoft http://blog.csdn.net/zhangyuanwei88/article/details/38556689

使用Gson解析复杂的json数据

Gson解析复杂的json数据 最近在给公司做一个直播APK的项目,主要就是通过解析网络服务器上的json数据,然后将频道地址下载下来再调用Android的播放器进行播放,原先本来打算使用普通的json解析方法即JsonObject和JsonArray的配合使用,这对于解析小数据的json数据还是比较实用,但是当解析json数据比较复杂的时候这种方法就显得比较吃力也比较麻烦了,如果大家感兴趣的话网上有大量的实例可以到网上去看看. 在这里我将介绍解析json数据的另外一种方法就是通过Gson解析,

解析并呈现json数据

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式. JSONM文件中包含了关于“名称”和“值”的信息. 有时候我们需要读取JSON格式的数据文件,在jQuery中可以使用Ajax或者 $.getJSON()方法实现. jQuery ajax - getJSON() 方法 语法: jQuery.getJSON(url,data,success(data,status,xhr)) 等价于: $.ajax({ url: url, data: data, suc

Gson解析复杂的json数据

最近在给公司做一个直播APK的项目,主要就是通过解析网络服务器上的json数据,然后将频道地址下载下来再调用Android的播放器进行播放,原先本来打算使用普通的json解析方法即JsonObject和JsonArray的配合使用,这对于解析小数据的json数据还是比较实用,但是当解析json数据比较复杂的时候这种方法就显得比较吃力也比较麻烦了,如果大家感兴趣的话网上有大量的实例可以到网上去看看. 在这里我将介绍解析json数据的另外一种方法就是通过Gson解析,对于解析比较简单的json数据我

Java-json系列(二):用JSONObject解析和处理json数据

本文中主要介绍JSONObject处理json数据时候的一些常用场景和方法. (一)jar包下载 所需jar包打包下载百度网盘地址:https://pan.baidu.com/s/1c27Uyre (二)常见场景及处理方法 1.解析简单的json字符串: 1 // 简单的json测试字符串 2 public static final String JSON_SIMPLE = "{'name':'tom','age':16}"; 3 4 JSONObject obj = JSONObje

Gson解析第三方提供Json数据(天气预报,新闻等)

之前都是自己写后台,自己的server提供数据给client. 近期在看第三方的数据接口,訪问其它站点提供的信息.比方.我们可能自己收集的数据相当有限.可是网上提供了非常多关于天气预报.新闻.星座运势.身份证号.车辆违章.健康医疗.快递查询.ip查询.翻译等的api接口.基本返回数据为类型json和xml 我就喜欢简单便捷的东西.在这解析一下第三方新闻的接口返回的json数据: 我喜欢用谷歌提供的Gson,感觉比JSON去解析要简单.方便,快捷:当然了阿里巴巴提供的fastjson也是极好的.在

Android:使用Gson解析复杂的JSON数据

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,目前广泛使用.本文主要讲解android如何解析复杂格式的JSON数据,适合android初学者和初步接触JSON的人. 1.JSON相关介绍: 首先了解一下JSON的相关内容,JSON中的数据是以键值对的形式出现的.例如"name":"jack":这就是一个键值对,可以理解为name=jack.JSON中很重要的两个概念就是数组(array)和对象(object),初学者

hive 存储,解析,处理json数据

hive 处理json数据总体来说有两个方向的路走 1.将json以字符串的方式整个入Hive表,然后通过使用UDF函数解析已经导入到hive中的数据,比如使用LATERAL VIEW json_tuple的方法,获取所需要的列名. 2.在导入之前将json拆成各个字段,导入Hive表的数据是已经解析过得.这将需要使用第三方的SerDe. 测试数据为新浪微博测试公开数据 该数据采用json格式存储,id代表当前用户微博的id,ids代表当前微博用户关注其他微博用户的id列表,total_numb