You Don't Know JS: Scope & Closures (附加:Lexical/dynamic作用域)
Posted Mr-chen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了You Don't Know JS: Scope & Closures (附加:Lexical/dynamic作用域)相关的知识,希望对你有一定的参考价值。
javascript只有Lexical Scope 模式
Lexical Scope就是在写代码的时候,定义函数的时候创建的作用域!
而动态作用域是在runtime时,函数被调用的地方的作用域!
实际上 dynamic Scope是 this关键字的近亲。这会在this & Object Prototypes系列讲解。
第二章,lexical scope是这方面的法则:Engine如何查询一个变量,在哪找到这个变量!
关键特征就是lexical scope是定义在author-time,打代码的阶段。(并不使用eval())
最后: this关键字关心一个函数如何被调用,这证明了this机制和动态作用域的相关性!
以上是关于You Don't Know JS: Scope & Closures (附加:Lexical/dynamic作用域)的主要内容,如果未能解决你的问题,请参考以下文章
You Don't Know JS: this & Object Prototypes( 第2章 this)
You Don't Know JS: Scope & Closures (第4章: Hoisting)
You Don't Know JS: Scope & Closures (附加:Lexical/dynamic作用域)
You Don't Know JS: Scope & Closures (第3章: 函数 vs 块作用域)
You Don't Know JS: this & Object Prototypes( 第一章 this or That?)
(未完成👃)You Don't Know JS: Scope & Closures (第5章: Scope & Closures)