ECMAScript-262 @2023版本中的关键字和保留字

2024-03-02 06:28

本文主要是介绍ECMAScript-262 @2023版本中的关键字和保留字,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、什么是标识符?

所谓标识符,就是javascript里的变量、函数、属性或函数参数的名称,可由一个或多个字符组成,当然标识符有命名规范

  • 标识符第一个字符必须是 一个字母、下划线(_)或美元符号($)
  • 其他字符则可以是字母、下划线、美元符号或数字

    即:数字不能作为第一个字符

按照惯例,js标识符采用小驼峰命名方式,虽然这种方式不强制,但这种形式和ECMAScript内置函数和对象命名一致,所以算是最佳实践,比较推荐采用小驼峰命名方式

注意:ECMAScript严格区分大小写, example 和 Example是两个标识符,typeof是关键字,Typeof则不是

2、关键字

ECMA-262的关键字,用作特殊用途,关键字不能用作标识符或属性名

根据ECMAScript-262最后更新的2023年版本

 

规定的关键字如下: 

  1. await
  2. break
  3. case
  4. catch
  5. class
  6. const
  7. continue
  8. debugger
  9. default
  10. delete
  11. do
  12. else
  13. export
  14. extents
  15. false
  16. finally
  17. for
  18. function
  19. if
  20. import
  21. in
  22. instanceof
  23. new
  24. null
  25. return
  26. super
  27. switch
  28. this
  29. throw
  30. true
  31. try
  32. typeof
  33. var
  34. void
  35. while
  36. with
  37. yield

3、保留字

保留字是保留给未来用作关键字的,所以同样不能用作标识符或属性名

  • 始终保留: enum
  • 严格模式下保留: implements 、interface、 let、package、protected、private、public、static

argument 和 eval 不是关键字或保留字,但它们在严格模式代码中受到一些限制。所以也不建议使用

这些词不能用作标识符,但还可以用作对象的属性名,但一般不建议使用,已确保能兼容过去和未来的ECMAScript版本

ECMA-62标准原文

ECMAScript® 2023 Language Specificationicon-default.png?t=N7T8https://262.ecma-international.org/14.0/#sec-keywords-and-reserved-words

在标准中还有条件关键字和上下文关键字的区别,但本文不做区分,建议都不要用

ps:夯实基础,细读红宝书的简单记录,如果不恰当之处,欢迎交流!

这篇关于ECMAScript-262 @2023版本中的关键字和保留字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/765208

相关文章

C#中lock关键字的使用小结

《C#中lock关键字的使用小结》在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时,其他线程无法访问同一实例的该代码块,下面就来介绍一下lock关键字的使用... 目录使用方式工作原理注意事项示例代码为什么不能lock值类型在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时

在macOS上安装jenv管理JDK版本的详细步骤

《在macOS上安装jenv管理JDK版本的详细步骤》jEnv是一个命令行工具,正如它的官网所宣称的那样,它是来让你忘记怎么配置JAVA_HOME环境变量的神队友,:本文主要介绍在macOS上安装... 目录前言安装 jenv添加 JDK 版本到 jenv切换 JDK 版本总结前言China编程在开发 Java

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

conda安装GPU版pytorch默认却是cpu版本

《conda安装GPU版pytorch默认却是cpu版本》本文主要介绍了遇到Conda安装PyTorchGPU版本却默认安装CPU的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录一、问题描述二、网上解决方案罗列【此节为反面方案罗列!!!】三、发现的根本原因[独家]3.1 p

Redis指南及6.2.x版本安装过程

《Redis指南及6.2.x版本安装过程》Redis是完全开源免费的,遵守BSD协议,是一个高性能(NOSQL)的key-value数据库,Redis是一个开源的使用ANSIC语言编写、支持网络、... 目录概述Redis特点Redis应用场景缓存缓存分布式会话分布式锁社交网络最新列表Redis各版本介绍旧

IIS 7.0 及更高版本中的 FTP 状态代码

《IIS7.0及更高版本中的FTP状态代码》本文介绍IIS7.0中的FTP状态代码,方便大家在使用iis中发现ftp的问题... 简介尝试使用 FTP 访问运行 Internet Information Services (IIS) 7.0 或更高版本的服务器上的内容时,IIS 将返回指示响应状态的数字代

Java 关键字transient与注解@Transient的区别用途解析

《Java关键字transient与注解@Transient的区别用途解析》在Java中,transient是一个关键字,用于声明一个字段不会被序列化,这篇文章给大家介绍了Java关键字transi... 在Java中,transient 是一个关键字,用于声明一个字段不会被序列化。当一个对象被序列化时,被

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

查看MySQL数据库版本的四种方法

《查看MySQL数据库版本的四种方法》查看MySQL数据库的版本信息可以通过多种方法实现,包括使用命令行工具、SQL查询语句和图形化管理工具等,以下是详细的步骤和示例代码,需要的朋友可以参考下... 目录方法一:使用命令行工具1. 使用 mysql 命令示例:方法二:使用 mysqladmin 命令示例:方