首页 > 编程语言 >JavaScript 对象和 JSON 的区别

JavaScript 对象和 JSON 的区别

时间:2023-08-09 18:46:40浏览次数:41  
标签:方括号 区别 引号 JavaScript JS JSON key 标识符

参考原文:https://blog.csdn.net/jiaojiao772992/article/details/77871785/
2.1 对象和 JSON 的区别

JSON 就是 JavaScript object notation ,JS对象表示法,是JS对象的严格子集。

区别就是引号:JSON要求所有的属性名(键)必须加 双引号“”,而JS对象实际上不要求双引号。

这就是一个标准JSON:

实际上不需要加引号也是合法的:

为什么JSON规定要加上双引号呢?

这是因为JSON是一个数据交换格式,它可以负责和PHP通信,它是HTML和PHP等等后台语言的信息交换媒介。PHP工程师可以从数据库中得到数据,组建JSON,前台通过Ajax拿到这个JSON之后,解析JSON,组建页面。

比如下图:

所以是其他语言要求JSON有引号,否则报错,不是JS要求的。JSON天生为通信而生!

但是有一种键必须加引号!就是不符合标识符命名规范的键,必须加引号,否则报错!

标识符命名规范:可以是字母、数字、下划线,但是不能以数字开头

下面是符合标识符命名规范的:

下面是不符合标识符命名规范的,必须加引号:

访问属性的时候,必须也加上引号,用方括号表示法。

特别的,如果我们用变量存储一个key,此时必须用方括号枚举,并且方括号中不能有引号:

比如小题目,alert出什么?

实际读取的是obj["2016"] //就是14,

如果alert(obj["key"]) //888,

如果alert (obj.key) //888 ,点语法只能以字符串形式访问对象中的键,key此时不是变量。

所以方括号语法相比点语法更为灵活。

标签:方括号,区别,引号,JavaScript,JS,JSON,key,标识符
From: https://www.cnblogs.com/trmbh12/p/17617717.html

相关文章

  • 一键登录和短信验证登录,到底有什么区别?
    一键登录是什么?本机号码一键登录验证是一种登录认证方式,通过获取用户手机上的本机号码来验证用户身份,从而实现快捷登录和简化登录流程的目的。在使用一键登录时,首先需要用户在登录页面选择使用本机号码一键登录,然后系统自动会通过移动网络运营商或SDK获取用户手机上的本机号码。然......
  • delphi 自带的JSON序列化类
    unitUnit1;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,Vcl.Controls,Vcl.Forms,Vcl.Dialogs,System.JSON.Serializers,Vcl.StdCtrls;typeTForm1=class(TForm)Memo1:TMemo......
  • 快速了解JavaScript的JSON
    JSON是用于存储和传输数据的格式。JSON通常用于服务端向网页传递数据。1什么是JSON?JSON英文全称 JavaScript Object NotationJSON是一种轻量级的数据交换格式。JSON是独立的语言 *JSON易于理解。2JSON语法基本上JSON对象就是基于JavaScript对象,因......
  • JavaScript用法
    JavaScript用法HTML中的JavaScript脚本代码必须位于<script>和</script>标签之间。Javascript脚本代码可被放置在HTML页面的<body>和<head>部分中。<script>标签<script>和</script>之间的代码包含了JavaScript<!DOCTYPEhtml><htmllang="en">......
  • Salesforce 助理认证和管理员认证有何区别?备考者应如何选择?
    随着Salesforce生态系统对专业人员的需求不断增长,获得相关认证对于寻求职业发展的从业者来说至关重要。对于刚接触Salesforce平台的人而言,Salesforce助理认证和Salesforce管理员认证是两个比较基础的认证。这两个认证有什么区别呢?从业者应该考哪个?本篇文章将探讨两种认证的主要......
  • JavaScript:表单生成器
    JavaScript:表单生成器一条小橘猫于2021-12-0116:10:56发布3393收藏38分类专栏:JavaScript文章标签:经验分享javajavascripthtml前端版权华为云开发者联盟该内容已被华为云开发者联盟社区收录加入社区JavaScript专栏收录该内容45篇文章55订阅已订阅表单属性有姓......
  • NETCORE - 读取 appsettings.json 配置数据
    NETCORE-读取appsettings.json配置数据 环境:net6 webapi 1. 配置appsettings.json数据{"Logging":{"LogLevel":{"Default":"Information","Microsoft.AspNetCore":"Warn......
  • excel wps宏编辑器,用JavaScript自定义函数设置单元格符合条件后,那一行都变色
        functionjudge(){varapp=Application;//WPS表格的应用程序对象varwb=app.ActiveWorkbook;//当前工作簿varsheet=wb.ActiveSheet;//当前工作表vardataRange=sheet.UsedRange;//使用的数据范围varnumRows=dataRange.Rows......
  • 【javascript】关于 AbortController
    相关概念:https://developer.mozilla.org/zh-CN/docs/Web/API/AbortController需求描述:后台返回10000条图片url,前端拿到后需要做成假分页,假设1页显示20张图,分成50页。部分逻辑:1for(leti=0;i<imgUrlList.length;i++){2letimage=newImage()3image.src=imgUrlLi......
  • clickhouse两种驱动的在对数据方面压缩的区别
    两种驱动:ru.yandex.clickhouse.clickhousedrivercom.clickhouse.jdbc.ClickHouseDriver数据包的格式顺序字段名+字段类型+对应的数据(1):如果不是com类型的驱动,每个数据字符一一映射为对应的ascii码格式为:字段名\r\n字段类型\\r\n数据一行数据里面的不同数据类型用\n隔......