1.1局部作用域(函数作用域):

声明在函数内部的变量【函数内部的作用域】

1.2全局作用域:

在代码中任何地方都能访问到的对象拥有全局作用域【整个script(函数外的作用域)】

1.3块作用域:

大括号里面的代码块

  • 块级变量类似于局部变量,for(){},if(){}都是块作用域
  • js包括:ECMAScript,BOM,DOM

★★★★★块级作用域的特点

  1. 声明变量不会提升到代码块顶部
  function fn(condition) {if (condition) {let num = 1;console.log(num);} else {num++;console.log(num);}}fn(0);//报错fn(1);//1
  1. 禁止重复声明
//**********会出错**************var num = 1;let num = 2;
//**********不会出错**************var num = 1;if (haha) {let num = 2;}

局部变量,外边不能用,函数自己不会执行,需要调用,当我们执行函数时, 会在内存中开启新的作用域空间,称之为新的空间,或者局部作用域,函数运行的过程中,内存里有这个变量,但是当这个函数执行完,就会关闭新的作用域空间,关空间的同时把变量销毁,

作用域链:变量查找机制(从内向外)

function fn(){let n=3;//局部function f1(){ let n=123;}f2();
}
fn();
console.log(num)//自己有用自己的,自己没有往上找

JavaScript-作用域和作用域链相关推荐

  1. JavaScript 开发进阶:理解 JavaScript 作用域和作用域链(上)

    作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理.今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望 ...

  2. Javascript的作用域,作用域链,闭包

    1,作用域和作用域链概念 作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期.在JavaScript中,变量的作用域有全局作用域和局部作用域两种. 1.1 全局作用域,在代码 ...

  3. JavaScript重难点解析4(作用域与作用域链、闭包详解)

    JavaScript重难点解析4(作用域与作用域链.闭包详解) 作用域与作用域链 作用域 作用域与执行上下文 作用域链 闭包 闭包理解 将函数作为另一个函数的返回值 将函数作为实参传递给另一个函数调用 ...

  4. javascript精雕细琢(三):作用域与作用域链

    目录 引言 1.执行环境 2.作用域与作用域链 引言 作用域与作用域链是JS应用中无时无刻不在影响程序运行的关键属性,但是由于它的不可见性,或者说它存在的过于普遍,简直就像空气一样.所以对它的谈及,都 ...

  5. JavaScript 开发进阶:理解 JavaScript 作用域和作用域链

    作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理.今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望 ...

  6. 【07】JavaScript:05-作用域、变量的作用域、作用域链、预解析、对象

    文章目录 JavaScript基础第05天笔记 1 - 作用域 1.1 作用域概述 1.2 全局作用域 1.3 局部作用域 1.4 JS没有块级作用域 2 - 变量的作用域 3 - 作用域链 4 - ...

  7. JavaScript -- 闭包与作用域链

    目录 什么是闭包 作用域及作用域链 闭包的使用及作用 闭包的作用: 闭包不会产生内存泄漏: 闭包的应用: 闭包练习题 参考文章: 什么是闭包 红宝书上解释: 闭包 是指有权访问另外一个函数作用域中的变 ...

  8. 图解 | JavaScript的作用域和作用域链

    文 / 景朝霞 来源公号 / 朝霞的光影笔记 ID / zhaoxiajingjing 图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 前情提要: 题目 | let和var的区别(一.二) ...

  9. 什么是JavaScript作用域、作用域链?

    JavaScript作用域.作用域链也是面试中出镜率很高的问题之一,同时也是JavaScript中最重要的基础概念之一. 今天我们将通过最简单实际的代码来展示函数作用域和全局作用域,在下篇文章中,我们 ...

  10. 深入理解Javascript作用域和作用域链

    什么是作用域 作用域是代码运行时某些特定的部分中变量.函数和对象的可访问性,换句话说,作用域决定了代码块中变量和其他资源的可见性 作用域共有两种工作模型 词法作用域(静态作用域) 动态作用域 词法作用 ...

最新文章

  1. 华为消息推送 有透传通道吗_华为首款头戴耳机FreeBuds Studio正式发布,能否撑起品牌之名?...
  2. linux solusos 软件包管理工具 eopkg 简介
  3. 初探云原生应用管理之:聊聊 Tekton 项目
  4. 【数据竞赛】Kaggle秘技,用Sigmoid函数做回归问题!
  5. python爬虫今日头条_python爬虫—分析Ajax请求对json文件爬取今日头条街拍美图
  6. 前后端分离系统使用Nginx代理https地址
  7. matlab流量结构分析,科学网-分享求解“结构分解分析(SDA)”各项均值的MATLAB程序-计军平的博文...
  8. Git基本介绍(三大分区及核心内部构造)
  9. solr相关配置(搜索novel案例)
  10. Linux 如何限制用户的磁盘使用量 -- quota
  11. ListView 控件与 ImageList 控件
  12. 苹果MacOS系统换壁纸的方法
  13. 简单易行的番茄时间管理法——学会专注(转载)
  14. 新能源车企骗补终结:实力说话淘汰赛开启
  15. 流量红利渐失,电商的“新故事”往哪讲?
  16. 腾讯通RTX拓展功能
  17. mysql双主复制模式_mysql复制模式第二部分-----双主模式
  18. html2day(合并单元格,有序、无序列表,input、select、textarea表单)
  19. Word文档方框中输入“√”、“×”的简单方法,绝对让你相见恨晚!
  20. thinkphp 框架 打开word文件的步骤

热门文章

  1. JSK-384 进制转换【入门】
  2. 51Nod-1014 X^2 Mod P【暴力】
  3. 中英文对照 —— 标点符号(punctuation)
  4. 从多路搜索树到 B-树
  5. Python 带界面的可执行程序
  6. 猫眼(门镜)中的光学
  7. vim 系统剪切板及 ubuntu 无法使用 vim 系统剪贴板(或 :reg 无+号寄存器)
  8. Python 进阶——标准散列机制
  9. c语言两个文件一起编译,keil中怎么把两个c程序怎么同时同时编译生成一个hex文件...
  10. mysql 命令类型_mysql 基本命令(3)-数据类型和运算符