JavaScript JSON使用原理及注意事项


Posted in Javascript onJuly 30, 2020

环境

  • vscode 1.46
  • Microsoft Edge 83

概念

JSON 是一种按照JavaScript对象语法的数据格式,这是 Douglas Crockford 推广的。

虽然它是基于 JavaScript 语法,但它独立于 JavaScript,这也是为什么许多程序环境能够读取(解读)和生成 JSON。

JSON可以作为一个对象或者字符串存在,前者用于解读 JSON 中的数据,后者用于通过网络传输 JSON 数据。

JavaScript 提供一个全局的 可访问的 JSON 对象来对这两种数据进行转换。

JSON 结构

{
 "squadName" : "Super hero squad",
 "homeTown" : "Metro City",
 "formed" : 2016,
 "secretBase" : "Super tower",
 "active" : true,
 "members" : [
  {
   "name" : "Molecule Man",
   "age" : 29,
   "secretIdentity" : "Dan Jukes",
   "powers" : [
    "Radiation resistance",
    "Turning tiny",
    "Radiation blast"
   ]
  },
  {
   "name" : "Madame Uppercut",
   "age" : 39,
   "secretIdentity" : "Jane Wilson",
   "powers" : [
    "Million tonne punch",
    "Damage resistance",
    "Superhuman reflexes"
   ]
  },
  {
   "name" : "Eternal Flame",
   "age" : 1000000,
   "secretIdentity" : "Unknown",
   "powers" : [
    "Immortality",
    "Heat Immunity",
    "Inferno",
    "Teleportation",
    "Interdimensional travel"
   ]
  }
 ]
}

JSON 数组

[
 {
  "name" : "Molecule Man",
  "age" : 29,
  "secretIdentity" : "Dan Jukes",
  "powers" : [
   "Radiation resistance",
   "Turning tiny",
   "Radiation blast"
  ]
 },
 {
  "name" : "Madame Uppercut",
  "age" : 39,
  "secretIdentity" : "Jane Wilson",
  "powers" : [
   "Million tonne punch",
   "Damage resistance",
   "Superhuman reflexes"
  ]
 }
]

其他注意事项

  • JSON 是一种纯数据格式,它只包含属性,没有方法。
  • JSON 要求有两头的 { } 来使其合法。最安全的写法是有两边的括号,而不是一边。
  • 甚至一个错位的逗号或分号就可以导致 JSON 文件出错。您应该小心的检查您想使用的数据(虽然计算机生成的 JSON 很少出错,只要生成程序正常工作)。您可以通过像 JSONLint 的应用程序来检验 JSON。
  • JSON 可以将任何标准合法的 JSON 数据格式化保存,不只是数组和对象。比如,一个单一的字符串或者数字可以是合法的 JSON 对象。虽然不是特别有用处……
  • 不像 JavaScript 标识符可以用作属性,在 JSON 中,只有字符串才能用作属性。

对象和文本间的转换

可以使用 JSON.stringify 和 JSON.parse 来进行对象和文本间的转换。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
防止网站内容被拷贝的一些方法与优缺点好处与坏处分析
Nov 30 Javascript
JQuery自适应IFrame高度(支持嵌套 兼容IE,ff,safafi,chrome)
Mar 28 Javascript
jquery scrollTop方法根据滚动像素显示隐藏顶部导航条
May 27 Javascript
使用js实现按钮控制文本框加1减1应用于小时+分钟
Dec 09 Javascript
js判断某个方法是否存在实例代码
Jan 10 Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
Jan 10 Javascript
jQuery+json实现动态创建复杂表格table的方法
Oct 25 Javascript
浅谈使用React.setState需要注意的三点
Dec 18 Javascript
js屏蔽退格键(backspace或者叫后退键与F5)
Feb 10 Javascript
详解vue后台系统登录态管理
Apr 02 Javascript
微信小程序实现订单倒计时
Nov 01 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
Jan 20 Vue.js
解决vue cli4升级sass-loader(v8)后报错问题
Jul 30 #Javascript
基于JavaScript实现猜数字游戏代码实例
Jul 30 #Javascript
如何用JS模拟实现数组的map方法
Jul 30 #Javascript
Vue性能优化的方法
Jul 30 #Javascript
vue props default Array或是Object的正确写法说明
Jul 30 #Javascript
Vue props中Object和Array设置默认值操作
Jul 30 #Javascript
vue prop传值类型检验方式
Jul 30 #Javascript
You might like
php牛逼的面试题分享
2013/01/18 PHP
基于curl数据采集之正则处理函数get_matches的使用
2013/04/28 PHP
Mootools 1.2教程 同时进行多个形变动画
2009/09/15 Javascript
jquery 输入框数字限制插件
2009/11/10 Javascript
什么是DOM(Document Object Model)文档对象模型
2012/03/05 Javascript
一个简单的网站访问JS计数器 刷新1次加1次访问
2012/09/20 Javascript
js显示时间 js显示最后修改时间
2013/01/02 Javascript
jQuery根据纬度经度查看地图处理程序
2013/05/08 Javascript
js给selected添加options的方法
2015/05/06 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
Ajax跨域实现代码(后台jsp)
2017/01/21 Javascript
jQuery实现web页面樱花坠落的特效
2017/06/01 jQuery
node.js之基础加密算法模块crypto详解
2018/09/11 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
2018/09/17 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
2019/02/26 Javascript
vue路由跳转传参数的方法
2019/05/06 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
pyqt5移动鼠标显示坐标的方法
2019/06/21 Python
np.random.seed() 的使用详解
2020/01/14 Python
在python image 中实现安装中文字体
2020/05/16 Python
利用CSS3参考手册和CSS3代码生成工具加速来学习网页制
2012/07/11 HTML / CSS
逼真的HTML5树叶飘落动画
2016/03/01 HTML / CSS
Contém1g官网:巴西彩妆品牌
2020/01/17 全球购物
美国最大的购物网站:Amazon.com(亚马逊美国)
2020/05/23 全球购物
校长先进事迹材料
2014/02/01 职场文书
医学生求职自荐书
2014/06/12 职场文书
群众路线教育实践活动的心得体会
2014/09/03 职场文书
机关领导干部作风整顿整改措施
2014/09/19 职场文书
小学公民道德宣传日活动总结
2015/03/23 职场文书
导游词之秦始皇兵马俑博物馆
2019/09/29 职场文书
我对PyTorch dataloader里的shuffle=True的理解
2021/05/20 Python
新手入门Mysql--概念
2021/06/18 MySQL
javascript数组includes、reduce的基本使用
2021/07/02 Javascript
ant design vue的form表单取值方法
2022/06/01 Vue.js