关于变量的连续赋值并引用问题。

在JS里先定义全局变量并赋值,然后定义方法重新定义并赋值变量,为什么在外面输出的是在方法里定义的局部变量的值?

        var a=b=10;

        (function(){
            var a=b=20;
        })()
        console.log(b);


b的值不应该是最顶上赋值的10么?
为什么输出出来是20?
哪位大佬能给解释下……

https://www.cnblogs.com/fansama/p/6648956.html

(function(){})()这个是立即执行函数,运行后会执行的,b被重新定义成20