局部变量:函数内部 定义的变量称为局部变量。
全局变量:函数外定义的变量就是全局变量。
局部变量和全局变量的区别:
1:作用域不同
局部变量的作用域是当前函数内。
全局的变量的作用域是整个script 标签内。包括函数内。
2: 生命周期不同
局部变量的生命周期,依赖于函数的调用周期,从开始调用到结束调用。
全局变量的生命周期,取决于窗口的创建和销毁。
3:定义的位置不同
局部的定义在函数体内。
全局的定义在函数外。
4:被访问的优先级不同。
如果局部变量和全局变量有重名的,那么在函数内局部变量的被访问的优先级更高。可以通过 window. 去访问全局的变量,或者是 this. 参照代码。
5:所在的内存不同
局部的在栈帧中,栈帧在栈中。
全局的属于window对象的属性,window对象在堆内存中。所以全局的在堆中。
6:被访问的速度不同
局部变量的存取的效率高于全局的。
版权声明:本文为qq_53441451原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。