1
(function add() {
add = 100;
console.log(add);
})();
2
(function () {
a = 100;
console.log('this', this)
console.log(a);
})();
console.log(a);
3
(function a() {
a = 100;
console.log(a);
})();
console.log(a);
4
var a = 200;
(function () {
var a = 100;
console.log(a);
})();
console.log(a);
5
var a = 1;
function add(a = 1, b = function () {
a = 3;
console.log(a); //3 修改的是参数体内的a! 为什么没有把a=1给改了
}) {
b();
console.log(a);
var a = 10;
console.log(a);
function a(){}
}
add();
console.log(a)
6
var a = 1;
function add(a = 1, b = function () {
a = 3;
console.log(a); //3 跟着这个作用域走
}) {
b();
console.log(a);
}
add();
console.log(a)
7
(function add(a = 1, b = function () {
a = 2
console.log('b内部', a)//2 函数b里面的a是整个形参作用域的
}) {
b()
var a;
console.log('add内部', a)
})()
8
(function add(a = 1, b = (function () {
a = 2
console.log('b内部', a)//2 函数b里面的a是整个形参作用域的
})()) {
var a;
console.log('add内部', a)
})()
9
(function add(a = 1, b = function () {
a = 2
console.log('b内部', a)//2 函数b里面的a是整个形参作用域的
}) {
b()
console.log('add内部', a)
})()