个人对js理解吧
1.作用域
var a = 1
(function(){
a = 2
console.log(a) // 2
})()
(function(){
var a = 3
console.log(a) // 3
console.log(window.a) // 1
})()
2.函数直接挂载变量
var b = 10;
(function b(){
b = 20;
console.log(b);
})();
由于b在b函数中,所以打印出来是b的函数
3.变量提升
var a = 10;
(function () {
console.log(a)