0
点赞
收藏
分享

微信扫一扫

我的Javascript学习-------基础篇(六)(关于作用域的学习)


写给自己:奥里给!!!~

文章目录

  • ​​作用域的学习​​
  • ​​全局作用域​​
  • ​​局部作用域​​
  • ​​(敲黑板)JS没有块级作用域​​
  • ​​变量的作用域​​
  • ​​全局变量​​
  • ​​局部变量​​
  • ​​作用域链​​

作用域的学习

全局作用域

作用于所有代码执行的环境(整个 script 标签内部)或者一个独立的 js 的文件;

局部作用域

作用于函数内的代码环境,就是局部作用域;

(敲黑板)JS没有块级作用域

看看下面一个神奇的例子ba!!!

if(true){
var num = 123;
console.log(num); //123
}
console.log(num); //123

变量的作用域

在JavaScript中,根据作用域的不同,变量可以分为两种:

  • 全局变量
  • 局部变量

全局变量

  • 全局变量在代码的任何位置都可以使用
  • 在全局作用域下 var 声明的变量 是全局变量

局部变量

  • 局部变量只能在该函数内部使用
  • 在函数内部 var 声明的变量是局部变量

作用域链

也没那么玄乎,作用域链简单来说就是通过采取就近原则的方式来查找变量最终的值。看下下面这个输出的例子就大概明白了!!!

var a = 1;
function fun1() {
var a = 2333;
var b = '2333';
fun2();
function fun2() {
var a = 3;
fun3();
function fun3() {
var a = 4;
console.log(a); //a的值为4
console.log(b); //b的值为23333
}
}
}
fun1();


举报

相关推荐

0 条评论