JavaScript Hoisting

Hoisting is JavaScript's default behavior of moving all declarations to the top of the current scope (to the top of the current script or the current function).

function number() {
    return 1;
}

(function() {
    try {
        number();
    } catch (ex) {
        console.log(ex);
    }
    var number = function number() {
        return 2;
    };

    console.log(number());
})();

console.log(number());

js会把声明提升到当前作用域的最上边,包括变量和函数声明。

function number() {
    return 1;
}

(function() {
    console.log(number());

    function number() {
        return 2;
    }
})();

console.log(number());
posted @ 2017-06-01 17:31  马在路上  阅读(181)  评论(0编辑  收藏  举报