大家好,我是前端进阶。JavaScript变量属于局部或全局范围,使用闭包使私有变量成为可能。1.全局变量函数可以访问函数内部定义的所有变量。functionmyFunction(){vara=4;returna*a;}但函数也可以访问函数外定义的变量。vara=4;//全局变量functionmyFunction(){returna*a;}在第一个例子中,a是局部变量..局部变量只能在定义的函数内部使用。全局变量可以被页面(和窗口)中的所有脚本使用(和更改),同名的全局变量和局部变量是不同的变量。修改一个而不是另一个。不使用关键字var创建的变量始终是全局变量,即使是在函数内创建的也是如此。二、变量的生命周期只要应用程序(窗口/网页)存在,全局变量就存在。局部变量的生命周期较短。它们在调用函数时创建,在函数完成时删除。3.为什么需要闭包?假设你想用一个变量来计算一些东西,你希望这个计数器对所有函数都是可用的。您可以使用一个全局变量和一个递增计数器的函数。此时需要关闭。示例:计数器 用全局变量计数
