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

相关文章

java中不同版本JSONObject区别小结

《java中不同版本JSONObject区别小结》本文主要介绍了java中不同版本JSONObject区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1. FastjsON2. Jackson3. Gson4. org.json6. 总结在Jav

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

IDEA如何切换数据库版本mysql5或mysql8

《IDEA如何切换数据库版本mysql5或mysql8》本文介绍了如何将IntelliJIDEA从MySQL5切换到MySQL8的详细步骤,包括下载MySQL8、安装、配置、停止旧服务、启动新服务以及... 目录问题描述解决方案第一步第二步第三步第四步第五步总结问题描述最近想开发一个新应用,想使用mysq

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

c# checked和unchecked关键字的使用

《c#checked和unchecked关键字的使用》C#中的checked关键字用于启用整数运算的溢出检查,可以捕获并抛出System.OverflowException异常,而unchecked... 目录在 C# 中,checked 关键字用于启用整数运算的溢出检查。默认情况下,C# 的整数运算不会自

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

你的华为手机升级了吗? 鸿蒙NEXT多连推5.0.123版本变化颇多

《你的华为手机升级了吗?鸿蒙NEXT多连推5.0.123版本变化颇多》现在的手机系统更新可不仅仅是修修补补那么简单了,华为手机的鸿蒙系统最近可是动作频频,给用户们带来了不少惊喜... 为了让用户的使用体验变得很好,华为手机不仅发布了一系列给力的新机,还在操作系统方面进行了疯狂的发力。尤其是近期,不仅鸿蒙O

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

windows端python版本管理工具pyenv-win安装使用

《windows端python版本管理工具pyenv-win安装使用》:本文主要介绍如何通过git方式下载和配置pyenv-win,包括下载、克隆仓库、配置环境变量等步骤,同时还详细介绍了如何使用... 目录pyenv-win 下载配置环境变量使用 pyenv-win 管理 python 版本一、安装 和