函數(shù)
函數(shù)對(duì)任何語(yǔ)言來(lái)說(shuō)都是一個(gè)核心的概念。通過(guò)函數(shù)可以封裝任意多條語(yǔ)句,而且可以在任何地方、任何時(shí)候調(diào)用執(zhí)行。ECMAScript中的函數(shù)使用function關(guān)鍵字來(lái)聲明,后跟一組參數(shù)以及函數(shù)體。函數(shù)的基本語(yǔ)法如下所示:
function functionIVame( arg0, argl,,…argN) {
statements
}
以下是一個(gè)函數(shù)示例:
function sayHi (name,message) {
alert( "Hello”+name+”,’’+message);
}
這個(gè)函數(shù)可以通過(guò)其函數(shù)名來(lái)調(diào)用,后面還要加上一對(duì)圓括號(hào)和參數(shù)(圓括號(hào)中的參數(shù)如果有多個(gè),可以用逗號(hào)隔開(kāi))。調(diào)用sayHi()函數(shù)的代碼如下所示:
sayHi("Nicholas”,"how are you today?");
這個(gè)函數(shù)的輸出結(jié)果是”Hello Nicholas,how are you today?“。函數(shù)中定義中的命名參數(shù)name和message被用作了字符串拼接的兩個(gè)操作數(shù),而結(jié)果最終通過(guò)警告框顯示了出來(lái)。
ECMAScript中的函數(shù)在定義時(shí)不必指定是否返回值。南昌網(wǎng)站制作公司提示:實(shí)際上,任何函數(shù)在任何時(shí)候都可以通過(guò)return語(yǔ)句后跟要返回的值來(lái)實(shí)現(xiàn)返回值。請(qǐng)看下面的例子:
function sum(numl,num2) {
return numl+num2;
}
這個(gè)sum()函數(shù)的作用是把兩個(gè)值加起來(lái)返回一個(gè)結(jié)果。我們注意到,除了return語(yǔ)句之外,沒(méi)有任何聲明表示該函數(shù)會(huì)返回一個(gè)值。調(diào)用這個(gè)函數(shù)的示例代碼如下:
var result=sum(5,10);
alert( result);
這個(gè)函數(shù)會(huì)在執(zhí)行完return語(yǔ)句之后停止并立即退出。因此,南昌建網(wǎng)站公司提醒,位于return語(yǔ)句之后的任何代碼都永遠(yuǎn)不會(huì)執(zhí)行。例如:
fu.nction sum (numl,num2) (
return numl+num2;
alert("Hello world"); //永遠(yuǎn)不會(huì)執(zhí)行
}
在這個(gè)例子中,由于調(diào)用alert()函數(shù)的語(yǔ)句位于return語(yǔ)句之后,因此永遠(yuǎn)不會(huì)顯示警告框。
當(dāng)然,一個(gè)函數(shù)中也可以包含多個(gè)return語(yǔ)句,如下面這個(gè)例子中所示:
function diff (numl. num2) {
if (numl return num2 - numl;
}else{
return numl - num2;
}
}
var result=diff(7,10);
alert( result);
這個(gè)例子中定義的diff()函數(shù)用于計(jì)算兩個(gè)數(shù)值的差。如果第一個(gè)數(shù)比第二個(gè)小,則用第二個(gè)數(shù)減第一個(gè)數(shù);否則,用第一個(gè)數(shù)減第二個(gè)數(shù)。代碼中的兩個(gè)分支都具有自己的return語(yǔ)句,分別用于執(zhí)行正確的計(jì)算。
另外,南昌網(wǎng)站建設(shè)公司百恒網(wǎng)絡(luò)前端開(kāi)發(fā)工程師提示,return語(yǔ)句也可以不帶有任何返回值。在這種情況下,函數(shù)在停止執(zhí)行后將返回undefined值。這種用法一般用在需要提前停止函數(shù)執(zhí)行而又不需要返回值的情況下。比如在下面這個(gè)例子中,就不會(huì)顯示警告框:
function sayHi(name,message) {
return;
alert("Hello"+name+","+message); //永遠(yuǎn)不會(huì)調(diào)用
}
南昌網(wǎng)頁(yè)設(shè)計(jì)公司推薦的做法是要么讓函數(shù)始終都返回一個(gè)值,要么永遠(yuǎn)都不要返回值。否則,如果函數(shù)有時(shí)候返回值,有時(shí)候有不返回值,會(huì)給調(diào)試代碼帶來(lái)不便。
接下南昌網(wǎng)站設(shè)計(jì)公司百恒網(wǎng)絡(luò)將講解函數(shù)中的參數(shù)
希望本文對(duì)廣大站長(zhǎng)或從事企業(yè)網(wǎng)站建設(shè)公司的團(tuán)隊(duì)有所幫助,如對(duì)此不太理解的,可以與南昌網(wǎng)絡(luò)公司百恒網(wǎng)絡(luò)技術(shù)部聯(lián)系。我們很高興與廣大站長(zhǎng)和從事企業(yè)網(wǎng)站建設(shè)公司技術(shù)人員分享我們的技術(shù)和經(jīng)驗(yàn)。