JS会在执行之前编译,并采取相应优化例如JIT优化;编译分为分词、语法分析、代码生成过程。
而作用域是关于变量(或是标识符)去何处查询以及如何查询的一套规则。分为RHS、LHS查询,RHS找到对应位置且要返回值,LHS查询会找到对应的空间。LHS在非严格模式下在无法找到的情况下在全局对象中建立变量且返回,严格模式下会出错“Reference Error”。简而言之,reference error是作用域判别失败,typeerror是作用域判别成功但是执行操作不当。
时间: 2024-10-10 14:50:19