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 相关文章推荐
fromCharCode和charCodeAt 方法
Dec 27 Javascript
学习ExtJS TextField常用方法
Oct 07 Javascript
JQUBAR1.1 jQuery 柱状图插件发布
Nov 28 Javascript
点弹代码 点击页面任何位置都可以弹出页面效果代码
Sep 17 Javascript
javascript实现TreeView 无刷新展开的实例代码
Jul 13 Javascript
jQuery通过点击行来删除HTML表格行的实现示例
Sep 10 Javascript
JavaScript实现在页面间传值的方法
Apr 07 Javascript
ionic开发中点击input时键盘自动弹出
Dec 23 Javascript
JavaScript模拟文件拖选框样式v1.0的实例
Aug 04 Javascript
对类Vue的MVVM前端库的实现代码
Sep 07 Javascript
JSON.stringify()方法讲解
Jan 31 Javascript
在Vue中使用Echarts实例图的方法实例
Oct 10 Javascript
解决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实现简单的上传进度条
2015/11/17 PHP
php5.4传引用时报错问题分析
2016/01/22 PHP
JavaScript游戏之优化篇
2010/11/08 Javascript
Javascript面向对象设计一 工厂模式
2011/12/20 Javascript
JQuery设置获取下拉菜单某个选项的值(比较全)
2014/08/05 Javascript
使用js Math.random()函数生成n到m间的随机数字
2014/10/09 Javascript
Javascript闭包用法实例分析
2015/01/23 Javascript
JavaScript字符串常用类使用方法汇总
2015/04/14 Javascript
javascript实现自动填写表单实例简析
2015/12/02 Javascript
由浅入深讲解Javascript继承机制与simple-inheritance源码分析
2015/12/13 Javascript
浅谈js中的in-for循环
2016/06/28 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
利用js来实现缩略语列表、文献来源链接和快捷键列表
2016/12/16 Javascript
Zepto实现密码的隐藏/显示
2017/04/07 Javascript
基于JavaScript实现的折半查找算法示例
2017/04/14 Javascript
bootstrap select插件封装成Vue2.0组件
2017/04/17 Javascript
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
vue2.0实现前端星星评分功能组件实例代码
2018/02/12 Javascript
原生JS使用Canvas实现拖拽式绘图功能
2019/06/05 Javascript
微信小程序顶部导航栏可滑动并选中放大
2019/12/05 Javascript
在Django中创建动态视图的教程
2015/07/15 Python
使用Python对Access读写操作
2017/03/30 Python
Django+Xadmin构建项目的方法步骤
2019/03/06 Python
python实现五子棋游戏
2019/06/18 Python
Scrapy框架介绍之Puppeteer渲染的使用
2020/06/19 Python
python+flask编写一个简单的登录接口
2020/11/13 Python
利用CSS3实现开门效果实例源码
2016/08/22 HTML / CSS
世界上最大的专业美容用品零售商:Sally Beauty
2017/07/02 全球购物
APM Monaco中国官网:来自摩纳哥珠宝品牌
2017/12/27 全球购物
Hotels.com泰国:酒店预订网站
2019/11/20 全球购物
如何利用find命令查找文件
2015/02/07 面试题
安全责任书范文
2014/08/25 职场文书
幼儿园小班个人总结
2015/02/12 职场文书
餐饮服务食品安全承诺书
2015/04/29 职场文书
确保工程质量承诺书
2015/04/29 职场文书
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers