js 聲明提高

  1. 聲明提早
    變量在聲明以前已經能夠使用了
  2. js中的全部的變量聲明都提高到函數體內的頂部 ,以下圖

    實際運行的狀況是以下函數

    function f1() {
    -- var scope ;spa

    console.log(scope) ;
    var scope = 'local' ;
    console.log(scope)
    }
    f1();

    備註:
    聲明提早了,而賦值語句沒有改變位置
    因爲第一個變量scope在函數中第一次使用以前已經聲明瞭,因此能夠使用,
    可是因爲沒有賦值,因此打印出來的值爲undefinedblog

  3. 函數的兩種建立方式
    函數聲明語法

js中的函數聲明提高到外部腳本,或外部做用域的頂部
作用域

因此上面的代碼類型於
function f1(name) {
  console.log(name );
}
f1('name') ;

備註
至關於將函數定義提早了


io

函數表達式建立法
以下圖
console


至關於function

var f2 ;變量

f2('name') ;
f2 = function(name) {
  console.log('什麼節能快要到了!') ;
}語法

    變量聲明提早了,賦值語句沒有變位置,由於函數沒有定義,因此報錯im

2018-03-30 21:12:30

相關文章
相關標籤/搜索