Javascriptノートとまとめ(2-6)var

1263 ワード

【例】
<script>
window.str = 'abc';

function t1(){
    function t2(){
        str = 'xyz';
        alert(str);
    }
    t2();
}

t1();
alert(window.str);
</script>
イジェクト:xyz xyz
ギャバーは変数を宣言します.どこで宣言すればどの部分に属しますか?(例えば、strはt 2の関数で宣言しています.strはt 2の関数の局所変数に属しています.varをプラスしないのは1つの割当値だけです.作用領域の規則によって、関数の局部がstrという変数声明がない場合、windowを見つけて、window.strを賦課値に与えて、グローバル変数を汚染します.)
 
【例】
<script>
console.log(window.a,window.b);
function t(){
    var a = 'local';
    b = 'global';
}
t();
console.log(window.a,window.b);
</script>
出力:
undefined undefined
undefined「global」