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