作用域

作者: 李大嘴JimmyLee | 来源:发表于2016-10-13 20:27 被阅读0次

今天下午去面试,自信满满觉得不用准备什么直接上,结果被打脸了。
才发现很久没面试了自己的语言表达能力下降好多。
感觉很熟悉的作用域、闭包这些问题都不能表达清楚。
可能自己想多了,脑里浮出的都是一个一个的作用域的变量关系,执行环境。
真想叫面试官给我一只笔来画图。
但是并没有这么做,自己可能的确认为完全理解了,但用自己的话又说不出来。真是痛苦。这以前完全没想到会这样。
所以,自己打算重新梳理下知识点,多巩固一下基础,先放下新的东西,沉淀。


在《js语言精粹》书的作者老道的解释,作用域控制着 变量与参数的可见性及生命周期。

它的重要作用是减少了命名冲突,并且提供了自动的内存管理。大多数类C语言中,都支持块级作用域,js却不支持块级作用域。但,js 确实有函数的作用域,意味着在函数中定义的参数和变量是可见的。


在《高程3》中的解释就要复杂一些
首先谈到了 执行环境
执行环境定义了变量和函数有权访问的其他数据,决定了他们各自的行为。
每一个执行环境中都有一个与之对应的 变量对象。(执行环境中定义的所有变量和函数都保存在这个对象中)。
最外层是 全局执行环境
而函数也有自己的执行环境,函数内部则是 局部执行环境
当代码在环境中执行时,会创建该执行环境的 作用域链

相关文章

  • js作用域

    1 - 作用域 1.1 作用域概述 全局作用域 局部作用域(函数作用域) 1.2 全局作用域 1.3 局部作用域 ...

  • 作用域,作用域链

    1 - 作用域 1.1 作用域概述 全局作用域 局部作用域(函数作用域) 1.2 全局作用域 1.3 局部作用域 ...

  • 变量作用域

    变量作用域:静态作用域、动态作用域JS变量作用域:JS使用静态作用域JS没有块级作用域(全局作用域、函数作用域等)...

  • 一网打尽 JavaScript 的作用域

    JavaScript 的作用域包括:模块作用域,函数作用域,块作用域,词法作用域和全局作用域。 全局作用域 在任何...

  • 作用域

    词法作用域,动态作用域,全局作用域,局部作用域,函数作用域,块级作用域,有些地方还能看到隐式作用域和显示作用域。 ...

  • JS的作用域

    JS的作用域: 全局作用域、函数作用域、eval 作用域、块级作用域 全局作用域: 函数作用域: 结果截屏: 说...

  • [ES6]1.1作用域

    作用域 全局作用域(global/window) 函数作用域/局部作用域(function) 块状作用域({}) ...

  • C - 作用域

    C - 作用域 一个 C 变量的作用域可以是: 块作用域 函数作用域 函数原型作用域 或 文件作用域 作用域描述程...

  • JavaScript作用域分类

    JavaScript作用域分类全局作用域局部作用域函数作用域块级作用域catchwithlet 和 const 什...

  • JS基础---05作用域

    JavaScript基础 1 - 作用域 1.1 作用域概述 全局作用域 局部作用域(函数作用域) 1.2 全局作...

网友评论

      本文标题:作用域

      本文链接:https://www.haomeiwen.com/subject/zrzwyttx.html