javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域

**
javascript从入门到跑路-----小文的js学习笔记(1)---------script、alert、document。write() 和 console.log 标签

javascript从入门到跑路-----小文的js学习笔记(2)--------- 语法构成、关键字和保留字、变量

javascript从入门到跑路-----小文的js学习笔记(3)---------javascript中的几种数据类型


javascript从入门到跑路-----小文的js学习笔记目录
**

       关注小文我们一起学习进步。

一、块级作用域

          含义: 任何一对花括号( 即“{ }” )中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可被访问的,我们称之为块级作用域。

但是在我们的js中是没有块级作用域的概念的,举个栗子:
javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第1张图片
执行结果:很明显这里两个变量都在里面,但是外面仍然可以访问调用

javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第2张图片 javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第3张图片

         注意:光理论是不够的 ,在此送大家2020最新企业级 Vue3.0/Js/ES6/TS/React/node等实战视频教程,点击此处免费获取,小白勿进哦

虽然我们的js 并没有块级作用域,但是我们可以通过其他的途径来实现块级作用域的 效果

二、模仿块级作用域

将变量写在闭包内可以模仿块级作用域,前面学过的闭包外部的是无法访问内部的,而只有内部的才能访问内部的,这和块级作用域相差无几。

当然这个匿名函数也是可以实现模仿块级作用域,

     语法: ( function ( ) {
     
                } ) ( )

例子:
javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第4张图片
执行结果:很显然你可以看到这里的a我们是打印不出来的,并且报错 “defined”
javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第5张图片
只有在内部才能调用该变量,而如果想在外部调用该变量的话,便只能将其赋给全局变量,例:

javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第6张图片
这样a变成了全局变量,外部也就能将其调用了。

**
        I want to accompany you to a lot of places, and later became unreachable

          --------------------曾想陪你去很多很多地方 后来都成了遥不可及的远方
javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域_第7张图片

你可能感兴趣的:(javascript从入门到跑路-----小文的js学习笔记(21)------- js模仿块级作用域)