下列代码的输出结果
let a = 0,
b = 0;
function A(a) {
A = function (b) {
alert(a + b++);
};
alert(a++);
}
A(1);
A(2);
此题的图解:省略了全局指向执行环境栈ECStack没有画所以答案:输出字符串 ‘1’ ‘4’
作用域链查找机制:在代码执行过程中遇到任何变量都先看其是否属于自己的,不是自己的则顺着作用域一级一级向上查找。
下列代码的输出结果
let a = 0,
b = 0;
function A(a) {
A = function (b) {
alert(a + b++);
};
alert(a++);
}
A(1);
A(2);
此题的图解:省略了全局指向执行环境栈ECStack没有画所以答案:输出字符串 ‘1’ ‘4’
作用域链查找机制:在代码执行过程中遇到任何变量都先看其是否属于自己的,不是自己的则顺着作用域一级一级向上查找。