javascirpt中,什么是词法,什么是词法作用域
创始人
2024-02-18 20:58:14
0

这里是编译原理相关的知识,代码的编译的过程一般分为

  1. 分词 和 词法分析
    1. 一行代码被分解(一般是空格)成多个单词
    2. 这些单词一般就叫做词法单元,就是所谓的分词
    3. 词法分析是按照特定规则生成一堆词法单元(分词)的过程
    4. 在js中可以理解为,用空格分隔开的所有字符都是分词
    5. 所以词法作用域,就是针对某个分词的,来描述这个分词在那个作用域中有效
      1. 这个分词,多数情况指得就是 变量
      2. 某个变量,在某些作用域中有访问权限,就成这个变量属于这个作用域
        1. 全局作用域
        2. 函数作用域
        3. 块作用域
  2. 语法分析
    1. 这个很好理解,我们在写代码时,没按照规则写,那么就是语法有问题
    2. 就像我们学习英文语法,把单词(JS 中叫做 分词)排列组合形成一个句子,分析句子的含义,就是语法分析
    3. 代码中,语法分析就是根据特定规则将分词转化成一个有结构的抽象语法树(AST)
    4. AST 本质是一个js对象
    5. vue源码中,关于模版引擎的解析,也会包含生成AST这一步,因为模版语法也是一种代码嘛,肯定要被解析成一个js对象然后再实现功能
  3. 代码生成
    1. 根据 语法分析生成的 AST生成各平台可执行的代码(机器码)
    2. 代码生成设计了系统资源分配等知识

相关内容

热门资讯

“新18条”落地!支持前海深化... 2022年9月,海关总署出台《海关总署支持前海深港现代服务业合作区全面深化改革开放若干措施》(俗称“...
原创 比... 最近金融圈炸了个大新闻:俄罗斯央行把欧洲清算银行告上法庭,一开口就要18.2万亿卢布赔偿,折合美元差...
爱奇艺少儿将推出AI内容专项扶... IT之家 12 月 19 日消息,爱奇艺少儿于 12 月 18 日在北京举办 2025 年内容伙伴私...
金融调解进县域 一站式解纷护民... “不用跑法院、不用耗时长,3天就敲定了还款方案,还拿到了司法确认文书,这下我们银行和客户都踏实了!”...
深桑达A(000032)披露累... 截至2025年12月19日收盘,深桑达A(000032)报收于18.52元,较前一交易日上涨0.27...
点赞!莞城法援这样为“夕阳红”... 尊老敬老是中华民族的传统美德 如何切实保障老年人的合法权益? 从专业化法律援助,到常态化的为老法律服...
原创 鞠... 一觉醒来,鞠婧祎可能会成为法制咖,被指控严重经济犯罪? 去年六月,鞠婧祎宣布和丝芭解约,但丝芭不仅...
五台山景区组织开展宗教教职人员... 马晓琴 王政钦 五台山管委会 12月18日至19日,五台山景区组织开展宗教教职人员“学法规、守戒律...
海正生材(688203)披露诉... 截至2025年12月19日收盘,海正生材(688203)报收于12.45元,较前一交易日上涨0.89...
陕国投A:增发价格将按法规要求... 有投资者在互动平台向陕国投A提问:“请问贵公司2024年经审计的归属于母公司普通股股东的每股净资产(...