在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/數(shù)據(jù)庫  HTML/ 變量提升到底是怎么回事?

變量提升到底是怎么回事?

這塊代碼第二個(gè)為什么彈5???

    var x = 1;
    var y = 2;
    method(8)
    alert(x+y)
    function method(y) {
        x += 2;
        y += 3;
        alert(x+y)
    }
回答
編輯回答
掛念你

你這個(gè)問題要理解的不是變量提升,而是變量的作用域,你的代碼和下面的代碼是一樣的,別看形參是y,實(shí)際上這是兩個(gè)不同的值

    var x = 1;
    var y = 2;
    method(8)
    alert(x+y)
    function method(a) {
        x += 2;
        a += 3;
        alert(x+a)
    }
2018年1月20日 12:28
編輯回答
檸檬藍(lán)

函數(shù)中的y 是參數(shù)里的y 但函數(shù)里的x還是全局的x

2018年5月27日 12:26
編輯回答
蝶戀花

函數(shù)內(nèi)部變量有定義就找函數(shù)內(nèi)部的變量,沒定義就找全局的,函數(shù)內(nèi)部的變量和全局的變量名相同,前者會覆蓋后者

var x = 1;
var y = 2;
method(8)
alert(x+y)
function method(y) {
    x += 2; //全局變量x=1+2
    y += 3; //形參y=8+3
    alert(x+y)
}
2018年2月26日 18:20