一些代码输出问题
AprilTong 3/3/2022 Javascript
# 问题 1
考点:
- 立即执行函数
- 闭包
- this 指向
var func = (function(a) {
this.a = a
return function(a) {
a += this.a
return a
}
})(
(function(a, b) {
return a
})(3, 5)
)
func(7) // 10
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 问题 2
考点:
- 立即执行函数
- 变量提升
var foo = 'april'
;(function(f) {
console.log(foo) // undefined
var foo = f || 'hello'
console.log(foo) // april
})(foo)
1
2
3
4
5
6
2
3
4
5
6
var foo = 'april'
;(function(foo) {
console.log(foo) // april
var foo = foo || 'hello'
console.log(foo) //april
})(foo)
1
2
3
4
5
6
2
3
4
5
6