• JavaScript作用域


    一、作用域:变量可以起作用的范围。有全局作用域和局部作用域两种。

    二、全局变量和局部变量

        全局变量:在任何地方都能访问到的变量,对应全局作用域;网页内所有脚本和函数都能够访问全局变量。

        局部变量:只在固定代码段中可访问到的变量,最常见的例如函数内部,对应局部作用域。

    注意1.在Javascript中,对象和函数也是变量;

       2.未使用var声明的变量是全局变量,不推荐使用;

               3.变量退出作用域之后会销毁,全局变量关闭网页或浏览器才会销毁。

       4.全局作用域形成了完整的Javascript环境。在html中,全局作用域是window,所有全局变量均属于window对象。

               5.除非有意为之,否则请勿创建全局变量。全局变量(或函数)能够覆盖window变量(或函数)。任何函数,包括window对象,能够覆盖你的全局变量和函数。

    三、块级作用域

        任何一对花括号中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可见的,这就是块级作用域。在es5之前没有块级作用域的概念,只有函数作用域。

    四、作用域链

         只有函数可以制造作用域结构,那么只要是有代码,至少有一个作用域,那就是全局作用域。凡是代码中有函数,那么这个函数就构成另一个作用域,叫1级作用域。这时候全局作用域又叫0级作用域,如果函数中还有函数,那么就以此类推,2级,3级....没有限制。

         将这样的所有的作用域列出来,可以有一个结构:函数内部指向函数外的链式结构,就称作作用域链。

  • 相关阅读:
    用torchvision.datasets.ImageFolder加载图片数据集
    Python-使用requests库和正则表达式爬取淘宝商品信息
    Item-CF和User-CF算法训练过程优化的心得
    在docker上部署springboot项目
    在Spring Boot 上配置Redis Cluster出现的异常
    Docker Redis5.0 集群搭建
    blade and soul factions
    Traveling in Blade & Soul
    what is blade and soul Soul Shields
    how to get soul shields in blade and soul
  • 原文地址:https://www.cnblogs.com/yaotuo/p/11949561.html
Copyright © 2020-2023  润新知