- var n = 10
- function fn() {
- // var n = 20
- function f() {
- // 没用var声明,去外层寻找n,直到找到windows为止,找到的话用的就是哟个全局变量,会改变原始全局变量的值
- n++;
- console.log(n)
- }
- var n
- n = 20
- f()
- console.log(n);
- return f
- }
-
- var x = fn()
- // 会在上一个x的值上去操作
- x()
- x()
- /* 使用var,相当于
- var x
- x = fn()
- 相当于需要重新初始化一遍
- */
- var x = fn()
- console.log(n)
