作用域

作者: 不系流年系乾坤 | 来源:发表于2016-09-29 01:08 被阅读7次

作用域

作用域是什么

  • 如果查找的目的是对变量进行赋值,那么使用LHS查询。

  • 如果目的是获取变量的值,就会使用RHS查询。

  • 不成功的RHS引用会导致ReferenceError异常。

  • 不成功的LHS引用会导致自动隐式地创建一个全局变量(非严格模式下),该变量使用LHS引用的目标作为标识符,或者抛出ReferenceError异常(严格模式下)

  • ReferenceError同作用域的判别失败有关

  • TypeError则代表作用域判别成功了,但是对结果操作是非法或不合理的。

词法作用域

作用域气泡

欺骗词法evalwith

setTimeout()第一个参数可以是字符串,其内容可以被解释为一段动态函数代码。

new Function()最后一个参数可以接受代码字符串,并将其转化为动态生成的函数。

如果引擎在代码中发现eval()或with,它只能简单地假设关于标识符位置的判断都是无效的,所有的优化可能都是无意义的。

相关文章

  • 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/ldskyttx.html