文章配套視頻
對象的定義
函數(shù)也是一個對象
函數(shù)就是可以重復(fù)執(zhí)行的代碼塊
函數(shù)就是完成特定功能的一段代碼
使用typeof檢查一個函數(shù)對象時,會返回function
作用
因?yàn)橐徊糠执a使用次數(shù)可能會很多冯袍,所以封裝起來被辑,需要的時候調(diào)用就可以了焰雕。
1)將復(fù)雜的事情簡單化
2)將重復(fù)使用的代碼進(jìn)行統(tǒng)一封裝
特點(diǎn):
1)封裝到函數(shù)中的代碼不會立即執(zhí)行
2)函數(shù)中的代碼會在函數(shù)調(diào)用的時候執(zhí)行
3)調(diào)用函數(shù) 語法:函數(shù)對象()
4)調(diào)用函數(shù)時,函數(shù)中封裝的代碼會按照順序執(zhí)行
基本使用
不常用:
var fun = new Function("console.log('大家好, 我是函數(shù)!');");
常用
函數(shù)定義:
function 函數(shù)名([形參1,形參2, ...,形參N]){
函數(shù)體
}
函數(shù)調(diào)用
函數(shù)名();
常見的聲明方式
1) 函數(shù)聲明方式
function add(num1,num2){
return num1+num2;
}
2) 函數(shù)表達(dá)式聲明方式
var add= function(num1,num2){
return num1+num2;
};
3) 使用Function構(gòu)造函數(shù)
var add = new Function('num1','num2','return num1+num2');
不推薦使用, 主要用于面向?qū)ο髸r理解"函數(shù)就是對象, 函數(shù)名就是指針"這一概念
快速入門
計算1+3
函數(shù)的參數(shù)
為什么要設(shè)置參數(shù)识埋?
為了增強(qiáng)函數(shù)的功能性和函數(shù)的可拓展性,便于交互。
形參:
1)形式上參與運(yùn)算的變量年碘,無實(shí)際值,為實(shí)參占位置展鸡,就像一個軀殼一樣屿衅。
2)function f(a,b){} //a,b是形參,占位用莹弊,函數(shù)定義時形參無值
實(shí)參:
1)實(shí)際參與運(yùn)算的變量涤久。形參為他占位置,真實(shí)參與運(yùn)算的變量箱硕。
2)f(x, y); //x, y實(shí)參拴竹,有具體的值,會把x, y復(fù)制一份給函數(shù)內(nèi)部的a和b剧罩,函數(shù)內(nèi)部的值是復(fù)制的新值栓拜,無法修改外部的x,y
注意:在其它語言中實(shí)參個數(shù)必須和形參個數(shù)一致,
但是JavaScript中沒有函數(shù)簽名的概念惠昔,實(shí)參個數(shù)和形參個數(shù)可以不相等