JSON语法格式
一、JSON数据格式
名称/值对
二、JSON值对数据类型
数字 字符串 逻辑值 数组(在方括号中) 对象 (在花括号中) null
eg:
{
"staff":[
{"name":"小明","age":"18"},
{"name":"小红","age":"15"},
{"name":"小黄","age":"20"}
]
}
三、JSON解析
eval和Json.parse
eval在代码中使用很危险,特别是用它执行第三方的Json数据(其中可能包含恶意代码)时,尽可能使用JSON.parse()方法解析字符串本身,该方法可以捕获JSON中的语法错误
eg1:
(1) var jsondata='{"staff":[{"name":"小明","age":"18"},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}';
var jsonbj=eval('('+jsondata+')');
alert(jsonbj.staff[0].name)
(2) var jsondata='{"staff":[{"name":"小明","age":"18"},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}';
var jsonbj=JSON.parse(jsondata);
alert(jsonbj.staff[0].name)
eg2:
(1) var jsondata='{"staff":[{"name":"小明","age":alert(123)},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}';
var jsonbj=eval('('+jsondata+')');
alert(jsonbj.staff[0].name)
会先弹出123,再弹出小明
(2) var jsondata='{"staff":[{"name":"小明","age":"18"},{"name":"小红","age":"15"},{"name":"小黄","age":"20"}]}';
var jsonbj=JSON.parse(jsondata);
alert(jsonbj.staff[0].name)
会报错Uncaught SyntaxError: Unexpected identifier
四、JSON校验工具(https://jsoncompare.com/#!/simple/)
JSON语法格式的更多相关文章
- 转:Json 语法 格式
转自: http://www.cnblogs.com/chencidi/archive/2011/03/24/1993450.html 评注: json 官网如下: http://json.org/j ...
- JOSN学习总结<二> JSON的格式与语法
今晚又下班早!!嘿嘿,继续JOSN的总结吧!!!!有人说这么简单还有必要写吗???我觉得“眼里过十遍不如手里过一遍”!!有错误之处请指正!!共同学习下!!!!废话不说了,进入今晚的正题: <二& ...
- 4种解决json日期格式问题的办法
4种解决json日期格式问题的办法 开发中有时候需要从服务器端返回json格式的数据,在后台代码中如果有DateTime类型的数据使用系统自带的工具类序列化后将得到一个很长的数字表示日期数据,如下 ...
- JSON语法五大要素图文介绍
原文:http://www.jb51.net/article/32398.htm JSON语法是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成,下面就进行学习研究,希望本文能教会 ...
- JSON语法
JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小.更快,更易解析. ...
- JSON语法与JavaScript语法的区别
JSON是独立于语言存在的,在不同的编程语言中对这种数据类型的实现不同,例如在JavaScript中使用JavaScript对象对这种数据格式进行实现,那么在java中当然是用java对象实现. 描述 ...
- JSON语法、对象、遍历数组的区别和基本操作
JSON 语法规则 JSON 语法是 javascript 对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是: ...
- JSON语法规则
JSON 语法规则 JSON 语法是 JavaScript 对象表示法语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是 ...
- JSON 语法
ylbtech-JSON: JSON 语法 JSON 语法是 JavaScript 语法的子集. 1. JSON 语法规则返回顶部 JSON 语法是 JavaScript 对象表示语法的子集. 1. ...
随机推荐
- 模板 Trie树
模板 Trie树 code: #include <iostream> #include <cstdio> using namespace std; const int wx=2 ...
- Nexus 相关
https://help.sonatype.com/repomanager3/download https://www.jianshu.com/p/5fc8fb14d25c
- atcoder 2579
You are taking a computer-based examination. The examination consists of N questions, and the score ...
- Linux系统之ssh命令
ssh命令用于远程登录上Linux主机. 常用格式:ssh [-l login_name] [-p port] [user@]hostname更详细的可以用ssh -h查看. 不指定用户: ssh 1 ...
- sublime 配置主题
默认主题可能看不清楚: 安装 PackageResourceViewer 安装Soda 主题 setting中加入 "theme": "Soda Light 3.subl ...
- python 分页 封装
分页 封装 我是在项目根目录创建个分页文件 分页代码: class Pagination(object): def __init__(self, data_num, current_page, url ...
- POJ2528 Mayor's posters(线段树+离散化)
题意 : 在墙上贴海报, n(n<=10000)个人依次贴海报,给出每张海报所贴的范围li,ri(1<=li<=ri<=10000000).求出最后还能看见多少张海报. 分析 ...
- 三个键print scroll、pause
上班族或是办公室白领每天都几乎跟键盘打交道, 那么键盘上的PrtSc SysRq(print screen).Scroll Lock.se Break(pause break).numlock等有何作 ...
- poj1064 Cable master(二分)
Cable master 求电缆的最大长度(二分法) Description Inhabitants of the Wonderland have decided to hold a region ...
- redis初步学习 0
2.1 Redis是什么 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统.Redis提供了一些丰富的数据 ...