JSON 格式是什么

JSON 格式是:是一种轻量级的数据交换格式。它基于 ECMAScript(European Computer Manufacturers Association, 欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。

一、JSON 格式是什么

JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式。它基于 ECMAScript(European Computer Manufacturers Association, 欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写,可以在多种语言之间进行数据交换。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition – December 1999的一个子集。

二、XML的解析方式

XML的解析方式有两种:

一是通过文档模型解析,也就是通过父标签索引出一组标记。例如:xmlData.getElementsByTagName(“tagName”),但是这样是要在预先知道文档结构的情况下使用,无法进行通用的封装。

另外一种方法是遍历节点(document 以及 childNodes)。这个可以通过递归来实现,不过解析出来的数据仍旧是形式各异,往往也不能满足预先的要求。

凡是这样可扩展的结构数据解析起来一定都很困难。

JSON也同样如此。如果预先知道JSON结构的情况下,使用JSON进行数据传递简直是太美妙了,可以写出很实用美观可读性强的代码。如果你是纯粹的前台开发人员,一定会非常喜欢JSON。但是如果你是一个应用开发人员,就不是那么喜欢了,毕竟xml才是真正的结构化标记语言,用于进行数据传递。

而如果不知道JSON的结构而去解析JSON的话,那简直是噩梦。费时费力不说,代码也会变得冗余拖沓,得到的结果也不尽人意。但是这样也不影响众多前台开发人员选择JSON。因为json.js中的toJSONString()就可以看到JSON的字符串结构。当然对于不是经常使用这个字符串的人,这样做仍旧是噩梦。常用JSON的人看到这个字符串之后,就对JSON的结构很明了了,就更容易的操作JSON。

以上是在Javascript中仅对于数据传递的xml与JSON的解析。在Javascript地盘内,JSON毕竟是主场作战,其优势当然要远远优越于xml。如果JSON中存储Javascript复合对象,而且不知道其结构的话,我相信很多程序员也一样是哭着解析JSON的。

除了上述之外,JSON和XML还有另外一个很大的区别在于有效数据率。JSON作为数据包格式传输的时候具有更高的效率,这是因为JSON不像XML那样需要有严格的闭合标签,这就让有效数据量与总数据包比大大提升,从而减少同等数据流量的情况下,网络的传输压力。

延伸阅读

JSON常用类型

任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型。

对象:对象在 JS 中是使用花括号包裹 {} 起来的内容,数据结构为 {key1:value1, key2:value2, …} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。

数组:数组在 JS 中是方括号 [] 包裹起来的内容,数据结构为 [“java”, “javascript”, “vb”, …] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。

文章标题:JSON 格式是什么,发布者:E.Z,转载请注明出处:https://worktile.com/kb/p/51629

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
E.ZE.Z认证作者
上一篇 2023年5月9日
下一篇 2023年5月9日

相关推荐

  • 学编程要什么工具

    学习编程需要以下几种工具:1、文本编辑器或IDE、2、编译器、3、版本控制系统。 其中文本编辑器或IDE的选择尤为关键,它不仅影响代码的编写效率,还直接关联到后期代码的维护和管理。一个好的文本编辑器或集成开发环境(IDE)能提供语法高亮、代码提示、错误检测等功能,极大地提升编程学习的效率和质量。此类…

    2024年4月26日
    800
  • 斑码编程学什么

    斑码编程教学内容主要包括1、编程基础 2、算法逻辑 3、项目实践。 在这些教学内容中,编程基础扮演了极其关键的角色。通过对编程基础的学习,学生不仅能掌握各种编程语言的基本语法和使用方法,还能够了解到编程的核心理念和发展历史,从而为进一步深入学习打下坚实的基础。编程基础的学习通常从最基本的变量、数据类…

    2024年4月26日
    1000
  • 编程时都是按什么编

    编程时通常遵循一系列的原则和规范,其中主要包括:1、编码规范、2、设计模式、3、算法和数据结构、4、版本控制。在这些原则中,编码规范起着至关重要的作用。它确保代码的一致性和可读性,帮助开发者减少错误,提高协作效率。编码规范涵盖了从命名约定、缩进风格、注释方式到文件结构的各个方面,其目的是使代码清晰、…

    2024年4月27日
    800
  • 小学生能用什么编程语言

    Python、Scratch、JavaScript、Blockly是小学生可以学习的编程语言。 Python是一种容易上手的编程语言,它的语法接近英语,使得小学生能快速理解编程概念。此外,Python的社区支持强大,有大量教育资源可以利用,这样孩子们在遇到问题时可以很容易找到帮助。 一、PYTHON…

    2024年4月27日
    1100
  • 如何加强项目流程管理建设

    加强项目流程管理建设是提高项目管理效率、确保项目质量和按时完成项目目标的关键。通过建立清晰的项目流程、设定明确的项目目标、采用先进的项目管理工具和方法、进行有效的团队沟通与协作、持续进行项目监控和评估等方式,可以显著提高项目流程管理的质量和效率。在这些策略中,建立清晰的项目流程尤为重要,因为它为项目…

    2024年4月10日
    5600
  • 如何实施高效的需求管理流程

    实施高效的需求管理流程的步骤:1、明确需求定义和目标;2、建立需求管理团队;3、收集需求;4、需求分析和评估;5、编写需求文档;6、确认和批准需求;7、需求变更管理;8、持续监控和评估;9、建立反馈机制;10、培训和支持;11、文档记录和维护;12、持续改进。实施高效的需求管理流程是确保研发项目成功的重要环节。

    2023年11月12日
    31700
  • 如何团队管理

    团队管理要做到:1、确定团队目标;2、确定团队成员角色;3、建立有效的沟通机制;4、提高团队成员的工作积极性;5、监督和控制团队工作进展。确定团队目标是团队管理的第一步,它需要明确团队的使命、愿景和目标。 1、确定团队目标 确定团队目标是团队管理的第一步,它需要明确团队的使命、愿景和目标。在设定团队…

    2023年2月26日
    40100
  • 文心一言对于品牌传播的意义何在

    摘要:文心一言是品牌传播中的重要策略,意味着品牌理念、价值观的核心表达。在当前媒体环境下,一言的作用格外显著,对品牌建设和市场传播有多维度的影响。文心一言的核心观点包括:1、品牌识别度提升、2、顾客信任构建、3、品牌形象塑造、4、传播效率增强、5、危机应对策略。一言之中蕴含的是品牌智慧和精髓,简洁有…

    2023年11月29日
    34900
  • 敏捷开发的核心原则是什么

    敏捷开发的核心原则是个体和互动、工作产品、客户合作和适应变化,这些原则是敏捷开发方法论的基础。详细介绍:1、个体和互动,敏捷开发强调人与人之间的交流和协作,认为面对面的交流是最有效的信息传递方式,它鼓励团队成员之间的相互信任和尊重,强调每个人都是团队的重要组成部分,并且都有独特的贡献;2、工作产品,敏捷开发注重产生高质量的工作产品,如代码、测试套件等等。

    2023年10月20日
    1.4K00
  • fpga用什么编程

    摘要 FPGA(现场可编程逻辑门阵列)的编程通常采用专用的硬件描述语言,主要包括1、VHDL和2、Verilog。VHDL,即VHSIC硬件描述语言,是在VHSIC项目下开发的一种硬件描述语言,被广泛应用于电子设计自动化领域,可以精确地描述数字电路的行为及结构。VHDL不仅用于FPGA编程,还可用于…

    2024年4月25日
    1600

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部