Javascript 函數聲明先提高仍是變量先提高

你們都知道js 分爲詞法階段 和執行階段函數

也知道它是由於var變量和函數聲明會提高測試

可是你知道他們兩個誰先提高的嗎spa

 

測試一下code

function test(){
  alert(4);
}

var test;

console.log(test);

//輸出了 test這個函數體blog

//奧  原來 是函數提高 先於變量提高io

//由於聲明同名變量的時候是不會覆蓋以前的聲明的 只有賦值的時候纔會被覆蓋console

//若是test提高先於函數  那麼就會輸出undefinedfunction

 

//由此你明白了吧  函數聲明先於變量聲明!!!class

 

若是這樣 測試  無論誰提高在前  都會輸出test  由於提高在前 賦值在後  賦值會覆蓋以前的聲明!!!test

接下來稍微改一下就知道誰聲明在前了

相關文章
相關標籤/搜索