/*
* 函數(shù)
* - 函數(shù)也是一個(gè)對象
* - 函數(shù)中可以分鐘一些功能(功能),在需要時(shí)可以執(zhí)行這些功能(代碼)
* - 函數(shù)中可以保存一些代碼在需要的時(shí)候調(diào)用
* - 使用typeof檢查一個(gè)函數(shù)對象時(shí)袋毙,會(huì)返回一個(gè)function
*
* 函數(shù)有三種創(chuàng)建方式锭碳,第一種是用 new來創(chuàng)建函數(shù)斤富,第二種是function加函數(shù)名()創(chuàng)建植兰,第三種是匿名函數(shù);
* 下面來分別講一下使用:
*/
//我們在實(shí)際在開發(fā)中很少使用構(gòu)造函數(shù)來創(chuàng)建一個(gè)函數(shù)對象
//創(chuàng)建一個(gè)函數(shù)對象尺栖。這種寫法不好讽挟,建議不要使用
//第一種創(chuàng)建方式
//var fun = new Function('console.log("Hello 這是我的第一個(gè)函數(shù)");');
//封裝到函數(shù)中的代碼不會(huì)立即執(zhí)行
//函數(shù)中的代碼會(huì)在函數(shù)調(diào)用的時(shí)候執(zhí)行
//調(diào)用函數(shù) 語法: 函數(shù)對象()
//當(dāng)調(diào)用函數(shù)時(shí)懒叛,函數(shù)中封裝的代碼會(huì)按照順序執(zhí)行
//console.log(fun);
//調(diào)用函數(shù)
//fun();
//第二種創(chuàng)建方式
/*
* 使用函數(shù)聲明來創(chuàng)建一個(gè)函數(shù)
* 語法:
* function 函數(shù)名(形參1,形參2耽梅,...){
* 語句...
* }
*/
function fun2(){
console.log('這是我第二個(gè)函數(shù)');
}
//調(diào)用fun2
fun2();薛窥、
/*
* 使用函數(shù)白大師來創(chuàng)建一個(gè)函數(shù)
* var 函數(shù)名 = function(形參1,形參2,...){
* 語句...
* }
*/
//第三種創(chuàng)建方式
var fun3 = function(){
console.log('我是匿名函數(shù)中封裝的代碼');
};
fun3();
/*
* fun3和fun2的寫法沒有什么太大的區(qū)別诅迷,在有需求的情況下可以使用fun3佩番,一般情況下會(huì)使用fun2的寫法
* 這個(gè)寫法易懂、代碼少
* fun3是屬于賦值形式的函數(shù)罢杉,所以在大括號結(jié)束后面一定加上一個(gè)分號
*/