js中函数运行过程不仅仅是单纯的局部变量覆盖全局变量.和函数里面的声明情况有关. 比方: <script> var a =1; function test(){ alert(a); //a为undefined! 这个a并非全局变量.这是由于在function scope里已经声明了(函数体倒数第4行)一个重名的局部变量, //所以全局变量a被覆盖了.这说明了Javascript在运行前会对整个脚本文件的定义部分做完整分析,所以在函数test()运行前, //函数体中的变量a就被指向内部的局部变…
前言 Javascript中的变量定义方式有以下三种方式:1.直接定义变量,var与let均不写: a = 10; 2.使用var关键字定义变量 var a = 10; 3.使用let关键字定义变量 let a = 10; 这三种方式有什么区别呢?JavaScript全局变量和局部变量又是什么呢?可以带着这两个问题往下看. 变量的作用域 变量是有作用域的,大多数语言中的变量的作用域都有全局变量和局部变量之分.首先我们建立一个文件test1.html,从中输入以下代码: <script type=…