一般使用var声明的变量为局部变量。
function test(){ ???var temp = "dsd"; #局部 ???console.log(temp);}test() ???/*dsd*/console.log(temp) ???/*无法输出,变量为声明*//*Uncaught ReferenceError: temp is not defined*/
在函数中不使用var声明的变量为全局变量
function test(){ ???temp = "dsd"; #全局 ???console.log(temp);}test() ???/*dsd*/console.log(temp) ????/*dsd*/
或者使用window将数据加载到当前窗口,也可以实现全局
function test(){ ???window[‘temp‘]= "dsd"; ???console.log(window[‘temp‘]);}test() ???/*dsd*/console.log(window[‘temp‘]) ????/*dsd*/
本质:上面未使用var声明的变量,就相当于window.变量或者window[‘变量‘]
function test(){ ???v = "dsadas" ?????console.log(v)}test() ???/*dsadas*/console.log(v) ???/*dsadas*/console.log(window.v) ??/*dsadas*/ console.log(window[‘v‘]) ???/*dsadas*/
js中的全局变量
原文地址:https://www.cnblogs.com/ssyfj/p/9073614.html