js 对象命名
2024-10-20 09:20:52
JS 标识符的命名规则,即变量的命名规则:
- 标识符只能由字母、数字、下划线和‘$’组成
- 数字不可以作为标识符的首字符
对象属性的命名规则
- 通过[]操作符为对象添加属性时,属性名称可以是任何字符串(包括只包含空格的字符串和空字符串);
- 通过.操作符为对象添加属性时,属性名称必须是合法的标识符名称;
- 如果属性名包含非法的标识符字符,则只能采用 obj[“propertyName”]的形式;
- 如果属性名是合法的标识符,读取时即可以采用 obj.propertyName,也可以采用 obj[“propertyName”]的形式;
js 对象属性名
- js 对象的属性名在保存时是 string
let a = {
1: "b",
1: "w", //报错,属性名1重复
true: "0",
true: "1", //报错,属性名true重复
};
采用[]操作符读取对象属性时,js 解释器执行的动作
采用 obj[propertyName]
的形式读取或创建对象属性时,解释器首先会检查 propertyName 是值类型字面量还是用户定义的变量,如果 propertyName 是值类型的字面量,则解释器自动将其转换为字符串后再读取或创建属性,如 obj[1],obj[true]会被转换成 obj["1"]、obj["true"].如果 propertyName 是变量名称(或者是表达式),则解释器会读取变量内容(或对表达式求值),如果变量的值是字符串,则直接读取属性,如果是其他类型的数据,则转换为字符串后再读取属性
最新文章
- 【WPF】整个自定义按钮后台添加
- 使用EntityFramework6完成增删查改和事务
- [转]VC的DDK编译环境构建
- SNMP SNMP协议
- Java基础 —— 概述
- Spring AOP Example – Advice
- 如何将中国知网CNKI中的文献导入EndNote X6
- JAVAEE——SSH项目实战02:客户列表和BaseDao封装
- C#委托与事件学习笔记
- BZOJ.3926.[ZJOI2015]诸神眷顾的幻想乡(广义后缀自动机)
- 修改host文件——mac
- myeclipse和jdk的安装和配置
- 团队项目第二周spec设计
- ES Grafana
- Linux下利用Valgrind工具进行内存泄露检测和性能分析
- Spring Boot(一):入门篇
- 小米笔记本装MAC(黑苹果),外接USB蓝牙,禁止笔记本自带的蓝牙方法
- Dubbo剖析-SPI机制
- Failure to transfer org.springframework.boot:spring-boot-starter-parent:pom:2.0.1.RELEASE from https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempt
- How to Install and Configure Bind 9 (DNS Server) on Ubuntu / Debian System