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

鍍金池/ 問(wèn)答/HTML/ JS 函數(shù)聲明和變量聲明的提升順序

JS 函數(shù)聲明和變量聲明的提升順序

現(xiàn)在統(tǒng)一都認(rèn)為函數(shù)聲明的提升優(yōu)先于變量聲明的提升,能不能給個(gè)例子證明這一觀點(diǎn)?

下面的例子,并不能論證這一觀點(diǎn)

console.log(person); //? person() { console.log('function')}
function person() {
    console.log('function')
}
console.log(person); //? person() { console.log('function')}
var person = "variable";
console.log(person);//variable

無(wú)論是變量聲明還是函數(shù)聲明哪個(gè)優(yōu)先,結(jié)果都是一樣的;

// 假設(shè)變量聲明優(yōu)先,實(shí)際代碼如下
var person;
function person() {
    console.log('function')
}
console.log(person); //? person() { console.log('function')}
console.log(person); //? person() { console.log('function')}
person = "variable";
console.log(person);//variable

// 假設(shè)函數(shù)聲明優(yōu)先,實(shí)際代碼如下
function person() {
    console.log('function')
}
var person;
console.log(person); //? person() { console.log('function')}
console.log(person); //? person() { console.log('function')}
person = "variable";
console.log(person);//variable

請(qǐng)各位大牛給個(gè)可以證明的例子,或者上述內(nèi)容有啥不對(duì)的地方,萬(wàn)分感謝

回答
編輯回答
命于你

函數(shù)聲明提升優(yōu)先,后面的變量聲明都會(huì)被忽略,標(biāo)準(zhǔn)就這么寫(xiě)。。。
如果變量聲明優(yōu)先,再聲明函數(shù)的話理應(yīng)報(bào)錯(cuò)的。

2017年9月25日 23:34
編輯回答
久礙你

標(biāo)準(zhǔn)里就是這么寫(xiě)的呀。。。

你后面那段代碼,先聲明變量然后在聲明函數(shù),一開(kāi)始得到的 person 是函數(shù),反過(guò)來(lái)也是一樣的,這不就說(shuō)明函數(shù)聲明優(yōu)先級(jí)要大么。
否則,誰(shuí)寫(xiě)在前面誰(shuí)大不就是第一個(gè)是變量,第二個(gè)才是函數(shù)么。。?;蛘吆竺娴膬?yōu)先級(jí)大。。。

變量聲明提示說(shuō)的就是函數(shù)一開(kāi)始的時(shí)候變量默認(rèn)的值呀,在函數(shù)執(zhí)行過(guò)程中肯定可以給函數(shù)賦其他值

http://zonxin.github.io/post/...

2017年6月11日 09:36
編輯回答
厭遇
console.log(a) // undefined
var a = 1
console.log(a) // 1

把這個(gè)列子和第一個(gè)例子對(duì)比,就可以看出優(yōu)先順序了。
如果變量聲明的優(yōu)先級(jí)大于函數(shù)聲明,那么你第一個(gè)例子的第一個(gè)打印值,應(yīng)該是undefined,而不是函數(shù)引用。
例如是下面這種情況。

console.log(person); //undefined
function person() {
    console.log('function')
}
console.log(person); //? person() { console.log('function')}
var person = "variable";
console.log(person);//variable
2018年9月14日 18:04