区别:1、全局变量的生命周期取决于窗口的创建和销毁,而局部变量的生命周期依赖于函数的调用周期,从开始调用到结束调用;2、全局变量定义在函数外,局部变量定义在函数体内;3、所在的内存不同,全局变量在堆中,而局部变量在栈中。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
局部变量:函数内部 定义的变量称为局部变量。
全局变量:函数外定义的变量就是全局变量。
局部变量和全局变量的区别:
1:作用域不同
局部变量的作用域是当前函数内。
全局的变量的作用域是整个script 标签内。包括函数内。
2: 生命周期不同
局部变量的生命周期,依赖于函数的调用周期,从开始调用到结束调用。
全局变量的生命周期,取决于窗口的创建和销毁。
3:定义的位置不同
局部的定义在函数体内。
全局的定义在函数外。
4:被访问的优先级不同。
如果局部变量和全局变量有重名的,那么在函数内局部变量的被访问的优先级更高。可以通过 window. 去访问全局的变量,或者是 this。
5:所在的内存不同
局部的在栈帧中,栈帧在栈中。
全局的属于window对象的属性,window对象在堆内存中;所以全局的在堆中。
6:被访问的速度不同
局部变量的存取的效率高于全局的。
【相关推荐:javascript学习教程】
以上就是javascript中全局变量与局部变量有何区别的详细内容,更多请关注php中文网其它相关文章!
已抢17605个
抢已抢50424个
抢已抢121646个
抢已抢184865个
抢已抢66643个
抢已抢351376个
抢