javascript变量提升和函数提升

来源:互联网 发布:摄像头ip端口扫描器 编辑:程序博客网 时间:2024/05/21 11:04
变量提升是把变量提升提到函数顶部。需要说明的是,变量提升只是提升变量的声明,并不会把赋值也提升上来。

函数提升是把整个函数都提到前面去。函数表达式不能被提升,函数声明形式能被提升。

<!DOCTYPE html><html lang="en"><head></head><body><script>    //变量提升    function test(){        a=2;        var a;        console.log(a);   //2    }    test();    //变量提升,不会把赋值也提升上来    var v='Hello World';    (function(){        var v;        console.log(v);  //undefined        v='I love you';    })();    //函数声明形式能被提升    function myTest(){        foo();        function foo(){            console.log("hello world");  //hello world        }    }    myTest();    //函数表达式不能被提升    function myTest2(){        foo();    //foo is not a function        var foo =function foo(){            console.log("hello world");        }    }    myTest2();</script></body></html>


原创粉丝点击