04-标识符、关键字、保留字

5,729次阅读
没有评论

共计 1580 个字符,预计需要花费 4 分钟才能阅读完成。

变量的命名规则(重要)

JS 是大小敏感的语言。也就是说 A 和 a 是两个变量,并非同一个变量,比如:

var A = 250; // 变量 1
var a = 888; // 变量 2

我们来整理一下 变量的命名规则,非常重要。

必须遵守:

  • 只能由字母 (A-Z、a-z)、数字(0-9)、下划线(_)、美元符($) 组成。
  • 不能以数字开头 。必须以字母(A-Z、a-z)、下划线(_) 或者美元符 ($) 开头。变量名中不允许出现空格。尤其注意,变量名中不能出现 中划线-,很多人写了多年代码都不知道这一点,让人大跌眼镜。
  • 严格区分大小写(JS 是区分大小写的语言)。
  • 不能使用 JS 语言中保留的「关键字」和「保留字」作为变量名。下一段会讲。
  • 变量名长度不能超过 255 个字符。
  • 汉语可以作为变量名。但是不建议使用,因为 low。

建议遵守:

  • 命名要有可读性,方便顾名思义。
  • 建议用驼峰命名法。比如 getElementById、getUserInfo、aaaOrBbbAndCcc
  • 赋值 = 符号的两边建议都加上空格。

补充

1、不能以数字开头,是为了把数字和字母区分开。

2、JS 底层保存标识符的时候,是采用的 Unicode 编码。所以理论上讲,在遵守命名规则的前提下,utf- 8 中包含的所有内容都可以作为标识符。

标识符

标识符 :在 JS 中所有的可以由我们 自主命名 的都可以称之为标识符。包括:变量名、函数名、属性名、参数名 都是属于标识符。

通俗来讲,标识符就是我们写代码时为某些东西起的名字。类似于人出生的时候,起个人名。

标识符的命名规则 和变量的命令规则是一样的。关于变量的命名规则,详见上一段。

标识符不能使用语言中保留的 关键字 保留字

关键字

关键字:被 JS 赋予了特殊含义的单词。也就是说,关键字是 JS 本身已经使用了的单词,我们不能再用它们充当变量名、函数名等标识符。关键字在开发工具中会显示特殊的高亮颜色。

JS 中的关键字如下:

if、else、switch、break、case、default、for、in、do、while、var、let、const、void、function、continue、return、try、catch、finally、throw、debugger、this、typeof、instanceof、delete、with、export、new、class、extends、super、with、yield、import、static、true、false、null、undefined、NaN

保留字

保留字:实际上就是预留的“关键字”。它们虽然现在还不是关键字,但是未来可能会成为关键字。同样不能用它们当充当变量名、函数名等标识符。

JS 中的保留字如下:

enum、await

abstract、boolean、byte、char、double、final、float、goto、int、long、native、short、synchronized、transient、volatile、arguments eval Infinity

# 以下关键字只在严格模式中被当成保留字,在 ES6 中是属于关键字
implements、interface、package、private、protected、public

当你在网上搜“JS 保留字”的时候,你会找到很多版本,每个版本都不一样,各有各的说法。如果有不一样的地方,请以我写的为准

其实,以谁的版本作为标准并不重要,因为有些单词到底是 关键字 还是 保留字,并没有严格的界限。JS 关于保留字的规则非常复杂,上方列表中的一些单词在特殊情况下其实是可以使用的。

我们只需要记住一点:上面提到的所有 关键字 保留字,我们都不要用它们作为变量名或者参数名。不要尝试这些奇怪的做法。

如果你还想了解更多,可以看这几个参考链接:

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-09-10发表,共计1580字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)