Javascript - 标识符

作者: 厦门_小灰灰 | 来源:发表于2019-11-10 23:10 被阅读0次

    在javascript中,在所有的可以由我们自主命名的都可以称为是标识符,例如:变量名、函数名、属性名都属于标识符;

    命名规则

    • 标识符中可以含有字母 、数字 、下划线_ 、$符号;
    • 标识符不能以数字开头;
    • 标识符不能是ES中的关键字或保留字;
    • 标识符一般都采用驼峰命名法;
    • javascript底层保存标识符时实际上是采用的Unicode编码,理论上讲,所有的utf-8中含有的内容都可以作为标识符;

    标识符解析

    识符解析是沿着作用域链一级一级地搜索标识符的过程。搜索过程始终从作用域链的前端开始,然后逐级地向后回溯,直到找到标识符为止。

    • 如果局部环境中存在着同名标识符,就不会使用父环境中的标识符;
    • 如果找不到标识符,表示标识符尚未声明,通常会导致错误发生;

    关键字和保留字

    ECMA-262描述了一组具有特定用途的关键字,这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符。以下就是ECMAScript的全部关键字:


    关键字.png

    ECMA-262还描述了另外一组不能用作标识符的保留字。尽管保留字在这门语言中还没有任何特定的用途,但他们有可能在将来被用作关键字。以下是EMCA-262第三版定义的全部保留字:


    保留字.png

    第5版把在非严格模式下运行时的保留字缩减为下列这些:


    非严格模式.png

    在严格模式下,第5版还对以下保留字加了限制:


    严格模式下.png

    除了上面列出的关键字和保留字,ECMA-262第5版对eval和arguments还施加了限制。在严格模式下,这两个名字也不能作为标识符或属性名,否则会抛出错误。

    无论是在严格模式下还是在非严格模式下,都不要在定义变量名、函数名或者属性名时使用上面列举出的保留字,以免入坑。

    相关文章

      网友评论

        本文标题:Javascript - 标识符

        本文链接:https://www.haomeiwen.com/subject/uonobctx.html