函數的聲明三種方式:瀏覽器
區別:ide
函數是一個能夠被其它代碼或其自身調用的代碼片斷,或者是一個指該函數的變量variable
。
當函數被調用時,參數arguments
做爲輸入傳遞到函數,而且函數能夠選擇的返回輸出。
在JS中函數也是一個對象Object
函數
函數名是做爲函數聲明或函數表達式的一部分聲明的標識符identifier
.
函數的做用域scope
取決於函數名是一個聲明仍是表達式。spa
匿名函數code
匿名函數是一個沒有函數名的函數對象
function () {}
命名函數ip
命名函數是具備函數名稱的函數作用域
function fn () {}
當即執行表達式編譯器
當即調用函數表達式(IIFE)是一個函數,其在函數被加載到瀏覽器的編譯器以後直接調用的。it
(function () {})()
命名函數表達式
做用:函數體內部引用當前函數。
命名函數表達式,函數名將會(只會)做爲函數體(做用域內)的本地變量。這樣能夠避免使用非標準的aruments.callee
屬性
var math = { 'fn': fn (n) { if (n <= 1) { return 1; } return n * fn(n - 1); } }