麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開(kāi)發(fā) > JS > 正文

深入認(rèn)識(shí)JavaScript中的函數(shù)

2024-09-06 12:43:39
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
概述
函數(shù)是進(jìn)行模塊化程序設(shè)計(jì)的基礎(chǔ),編寫(xiě)復(fù)雜的Ajax應(yīng)用程序,必須對(duì)函數(shù)有更深入的了解。JavaScript中的函數(shù)不同于其他的語(yǔ)言,每個(gè)函數(shù)都是作為一個(gè)對(duì)象被維護(hù)和運(yùn)行的。通過(guò)函數(shù)對(duì)象的性質(zhì),可以很方便的將一個(gè)函數(shù)賦值給一個(gè)變量或者將函數(shù)作為參數(shù)傳遞。在繼續(xù)講述之前,先看一下函數(shù)的使用語(yǔ)法:
function func1(…){…}
var func2=function(…){…};
var func3=function func4(…){…};
var func5=new Function();
這些都是聲明函數(shù)的正確語(yǔ)法。它們和其他語(yǔ)言中常見(jiàn)的函數(shù)或之前介紹的函數(shù)定義方式有著很大的區(qū)別。那么在JavaScript中為什么能這么寫(xiě)?它所遵循的語(yǔ)法是什么呢?下面將介紹這些內(nèi)容。
認(rèn)識(shí)函數(shù)對(duì)象(Function Object)
可以用function關(guān)鍵字定義一個(gè)函數(shù),并為每個(gè)函數(shù)指定一個(gè)函數(shù)名,通過(guò)函數(shù)名來(lái)進(jìn)行調(diào)用。在JavaScript解釋執(zhí)行時(shí),函數(shù)都是被維護(hù)為一個(gè)對(duì)象,這就是要介紹的函數(shù)對(duì)象(Function Object)。
函數(shù)對(duì)象與其他用戶(hù)所定義的對(duì)象有著本質(zhì)的區(qū)別,這一類(lèi)對(duì)象被稱(chēng)之為內(nèi)部對(duì)象,例如日期對(duì)象(Date)、數(shù)組對(duì)象(Array)、字符串對(duì)象(String)都屬于內(nèi)部對(duì)象。這些內(nèi)置對(duì)象的構(gòu)造器是由JavaScript本身所定義的:通過(guò)執(zhí)行new Array()這樣的語(yǔ)句返回一個(gè)對(duì)象,JavaScript內(nèi)部有一套機(jī)制來(lái)初始化返回的對(duì)象,而不是由用戶(hù)來(lái)指定對(duì)象的構(gòu)造方式。
在JavaScript中,函數(shù)對(duì)象對(duì)應(yīng)的類(lèi)型是Function,正如數(shù)組對(duì)象對(duì)應(yīng)的類(lèi)型是Array,日期對(duì)象對(duì)應(yīng)的類(lèi)型是Date一樣,可以通過(guò)new Function()來(lái)創(chuàng)建一個(gè)函數(shù)對(duì)象,也可以通過(guò)function關(guān)鍵字來(lái)創(chuàng)建一個(gè)對(duì)象。為了便于理解,我們比較函數(shù)對(duì)象的創(chuàng)建和數(shù)組對(duì)象的創(chuàng)建。先看數(shù)組對(duì)象:下面兩行代碼都是創(chuàng)建一個(gè)數(shù)組對(duì)象myArray:
var myArray=[];
//等價(jià)于
var myArray=new Array();
同樣,下面的兩段代碼也都是創(chuàng)建一個(gè)函數(shù)myFunction:
function myFunction(a,b){
      return a+b;
}
//等價(jià)于
var myFunction=new Function("a","b","return a+b");
通過(guò)和構(gòu)造數(shù)組對(duì)象語(yǔ)句的比較,可以清楚的看到函數(shù)對(duì)象本質(zhì),前面介紹的函數(shù)聲明是上述代碼的第一種方式,而在解釋器內(nèi)部,當(dāng)遇到這種語(yǔ)法時(shí),就會(huì)自動(dòng)構(gòu)造一個(gè)Function對(duì)象,將函數(shù)作為一個(gè)內(nèi)部的對(duì)象來(lái)存儲(chǔ)和運(yùn)行。從這里也可以看到,一個(gè)函數(shù)對(duì)象名稱(chēng)(函數(shù)變量)和一個(gè)普通變量名稱(chēng)具有同樣的規(guī)范,都可以通過(guò)變量名來(lái)引用這個(gè)變量,但是函數(shù)變量名后面可以跟上括號(hào)和參數(shù)列表來(lái)進(jìn)行函數(shù)調(diào)用。
用new Function()的形式來(lái)創(chuàng)建一個(gè)函數(shù)不常見(jiàn),因?yàn)橐粋€(gè)函數(shù)體通常會(huì)有多條語(yǔ)句,如果將它們以一個(gè)字符串的形式作為參數(shù)傳遞,代碼的可讀性差。下面介紹一下其使用語(yǔ)法:
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久精品视频69 | 最新在线黄色网址 | 天天夜夜草 | 黄色免费小网站 | 久久精品视频黄色 | 免费一及片 | 一级免费特黄视频 | 国产成人羞羞视频在线 | 免费网址黄 | 欧美无限资源 | 影视免费观看 | 99国产精品欲a | 国产午夜亚洲精品理论片大丰影院 | 久久男人 | 欧美大穴 | 韩国十九禁高潮床戏在线观看 | 亚洲国产成人久久一区www妖精 | 欧美一级无毛 | 日韩视频网址 | 极品销魂一区二区三区 | 久久久久亚洲a | 在线成人影视 | 主播粉嫩国产在线精品 | 亚洲免费视频大全 | 欧美精品久久久久久久久久 | 一区二区三区视频在线 | 成人做爰高潮片免费视频韩国 | 精品国产一区二区三区四区在线 | 羞羞答答xxdd在线播放 | 国产午夜精品视频免费不卡69堂 | fc2国产成人免费视频 | www.91视频com| 激情久久免费视频 | 激情小说激情图片激情电影 | 色人阁五月天 | 午夜色片| 免费a级黄色片 | 羞羞视频2023 | 日本在线视频一区二区三区 | 香蕉秀| 国产无遮挡一级毛片 |