我还是会不断想起那些关于你的瞬间
最近的生活是黑白的,没有什么前言。宝宝们,生活多彩吗?
最近的文章被尧尧吐槽有些水,因为我家的两个猫不让我敲键盘。这个理由能勉强接受吗?
为什么会有作用域?
程序需要一套规则来存储变量,并且之后可以方便的找到这些变量。这套规则就称为作用域。
1.1 编译原理
nuxt.js应用一个完成的服务器请求到渲染的流程
在传统编译语言的流程中,程序中的一段源代码在执行之前会经历以下三个步骤,统称为“编译”:
对于JS来说,大部分情况下的编译发生在代码执行前的几微秒(甚至更短)的时间内。
1.2 理解作用域
相关内容:
1.3 作用域嵌套
当一个块或者函数嵌套在另一个块或函数中时,就发生了作用域的嵌套。因此在当前作用域中无法找到某个变量时,引擎就会在外层嵌套的作用域中继续查找,知道找到该变量,或者抵达最外层的作用域为止,无论找到还是没找到,查询过程都会停止。
1.4 作用域嵌套
当一个块或者函数嵌套在另一个块或函数中时,就发生了作用域的嵌套。因此在当前作用域中无法找到某个变量时,引擎就会在外层嵌套的作用域中继续查找,知道找到该变量,或者抵达最外层的作用域为止,无论找到还是没找到,查询过程都会停止。
1.4 LHS & RHS
LHS:目的是对变量赋值
RHS: 目的是获取变量的值
LHS和RHS查询都会在当前作用域中开始,如果有需要,就会向上级作用域继续查找目标标识符,每次上升一级作用域,最后抵达全局作用域(顶层),无论找到或者没找到都会停止。
不成功的RHS引用会导致ReferenceError异常。不成功的LHS引用会导致自动隐式创建一个全局变量(非严格模式下),或者抛出ReferenceError异常(严格模式下)。
愿我们有能力不向生活缴械投降---Lin