js
全局变量、
局部
变量、闭包
一、js全局变量
在方法外部声明的变量
声明方式1:
var test;
var test = 5;
需注意的是该句不能包含在function内,否则是局部变量。这是第一种方式声明全局变量。
声明方式2:
test = 5;
没有使用var,直接给标识符test赋值,这样会隐式的声明了全局变量test。即使该语句是在一个function内,当该function被执行后test变成了全局变量。
声明方式3:
window.test;
window.test = 5;
这种方式经常被用到一个匿名函数执行后将一些函数公开到全局。
var test;
var test = 5;
需注意的是该句不能包含在function内,否则是局部变量。这是第一种方式声明全局变量。
声明方式2:
test = 5;
没有使用var,直接给标识符test赋值,这样会隐式的声明了全局变量test。即使该语句是在一个function内,当该function被执行后test变成了全局变量。
声明方式3:
window.test;
window.test = 5;
这种方式经常被用到一个匿名函数执行后将一些函数公开到全局。
二、js局部变量
方法内部,使用var声明的变量
三、js闭包
子函数可以继承父函数的局部变量