函数作用域

★函数作用域

⑴调用函数时创建函数作用域,函数执行完毕以后,函数作用域销毁

 

每调用一次,函数就会创建一个新的函数作用域,它们之间是互相独立的

 

⑶在函数作用域中可以访问到全局作用域的变量

    在全局作用域无法访问到函数作用域的变量

具体示例:

 

⑷当在函数作用域操作一个变量时,它会先在自身作用域中寻找,如果有就直接使用

   示例:

   

⑸如果没有则向上一级作用域中寻找,直到找到全局作用域

    示例:

   

⑹如果全局作用域中依然没有找到,则会报错 ReferenceError
    示例:

 

 

⑺在函数作用域也有声明提前的特性:

    使用var关键字声明的变量,会在函数中所有的代码执行之前被声明

    函数声明也会在函数中所有的代码执行之前执行

示例1:

示例2:

 

 

⑻在函数中,不使用var声明的变量都会成为全局变量

    示例1:

 

示例2:

 

 

⑼定义形参就相当于在函数作用域中声明了变量

    示例1:

结果:弹出警示框中显示:20

 

示例2:

 

结果:弹出警示框中显示:undefined

原文地址:https://www.cnblogs.com/shihaiying/p/12006624.html