• JavaScript操作JSON总结


    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。
    本文主要对JavaScript中的JSON操作做下总结。
    在JSON中,有两种结构:对象和数组。
    1.一个对象以”{“(左大括号)开始,”}”(右大括号)结束。每个”名称”后跟一个”:”(冒号):”‘名称/值’”之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。
    e.g #1:

    var o={"name":"qiufeng","age":24,"sex":"boy","website":"fengdingbo.com"};

    2. 数组是值(value)的有序集合。一个数组以”["(左中括号)开始,"]“(右中括号)结束。值之间使用”,”(逗号)分隔。
    e.g #2:

    var jsonArrayList=[
    	{"name":"qiufeng","age":24,"sex":"boy","website":"fengdingbo.com"},
    	{"name":"fengdingbo","age":23,"sex":"boy","website":"www.fengdingbo.com"}
    ];

    在数据传输过程中,json是以文本,即字符串的形式传递的,而JavaScript操作的是JSON对象,所以JSON对象和JSON字符串之间的相互转换是关键。
    e.g #3:JSON字符串

    var str = '{"name":"qiufeng","age":24}';

    e.g #4:JSON对象:

    var jsonObject = {"name":"qiufeng","age":24};

    一、JSON字符串转换为JSON对象

    要使用上面的str,必须使用下面的方法先转化为JSON对象:

    // 由JSON字符串转换为JSON对象
    // 加上圆括号的目的是迫使eval函数在处理JavaScript代码时
    // 强制将括号内的表达式(expression)转化为对象,而不是作为语句(statement)来执行
    // 使用eva来解析JSON字符串是很危险的,容易将一些置于字符串中的危险代码一并执行,
    var obj = eval("(" + str + ")");

    或者

    var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

    特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。

    二、可以使用JSON.stringify()将JSON对象转化为JSON字符串。

    e.g #5:

    var last=JSON.stringify(obj); //将JSON对象转化为JSON字符

    ps:上面的多个要领中,除了eval()函数是js自带的之外,其他的都需要引入json.js包。新版本的JSON修改了API,将JSON.stringify()和JSON.parse()两个要领都注入到了 Javascript 的内建对象里面。

  • 相关阅读:
    vmware中的虚拟系统和真实系统同时上网
    code first实现自关联(树结构数据)
    td无内容如何显示边框
    vs新建模板
    为ashx文件启用session管理
    有效防止SQL注入漏洞
    用DIV建左右自动伸缩型布局
    身份证验证算法
    CSS布局需注意的问题
    使用sharppcap抓数据包
  • 原文地址:https://www.cnblogs.com/Jerry-blog/p/5010259.html
Copyright © 2020-2023  润新知