美文网首页
函数作用域

函数作用域

作者: Chisonz | 来源:发表于2018-12-22 15:42 被阅读0次

    1、定义

    作用域(scope)指的是变量存在的范围。

    2、分类

    在 ES5 的规范中,Javascript 只有两种作用域:
    一种是全局作用域,变量在整个程序中一直存在,所有地方都可以读取;
    另一种是函数作用域,变量只在函数内部存在。

    3、全局变量和局部变量

    函数外部声明的变量就是全局变量(global variable),它可以在函数内部读取。
    在函数内部定义的变量,外部无法读取,称为“局部变量”(local variable)
    javaScript 语言特有"链式作用域"结构(chain scope),子对象会一级一级地向上寻找所有父对象的变量。所以,父对象的所有变量,对子对象都是可见的,反之则不成立。

    4、作用域规则

    • {}不产生一个作用域,定义函数才会产生一个函数作用域
    • 函数在执行的过程中,先从自己内部找变量
    • 如果找不到,再从创建当前函数所在的作用域去找, 以此往上

    相关文章

      网友评论

          本文标题:函数作用域

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