Doma

SevenOutman
关注
13156 号成员,2018-04-02 10:16:55 加入
625
个人主页 浏览
  • 下面的 JS 里变量声明是啥意思。。

    2018-04-02 10:28

    首先纠正一下楼主的描述……

    楼主贴出的这段不是 JS 代码,这是 JS 的文法,它描述了 JS 解释器应该如何解读 JS 代码
    更具体的说,这段是 JS 文法的符号定义

    所以楼上虽然正确地解释了 JS 里 | 运算符的作用,但并不是楼主贴的这段东西里的东西- -因为楼主的问题就问错了…这跟变量声明没关系

    这里是说明了 JS 中有如下几种“符号”(注意这个符号指的是文法中的符号,不是我们常说的运算符号,具体的需要楼主了解一下编译原理的知识)

    符号 digit,其表现为: 0 或 1 或 2 或 3 或 4 或 5 或 6 或 7 或 8 或 9
    符号 num,其表现为:一个或多个连续的 digit
    符号 op,其表现为:符号 sum 或符号 sub 或符号 mul 或符号 div (楼主贴的这段里没有这四个符号的定义,不过他们应该分别对应 +-*/)
    符号 expr,其表现为:符号 num 或者符号 op 后面跟着一个或多个连续的符号 expr
    

    在 JS 解释器的眼中,一篇 JS 源代码是这样的:
    比如有源代码如下:

    1 + 12
    

    在 JS 解释器的眼中是这样:

    num op num
    

    这样说感觉很绕,三两句话也讲不太清楚…要想完全理解还是需要楼主了解一下编译原理……