在javascript中,function指的是“函數(shù)”,是一組執(zhí)行特定任務(wù)(具有特定功能)的,可以重復(fù)使用的代碼塊;函數(shù)并不會自動運行,需要通過函數(shù)名調(diào)用才能運行。函數(shù)可以存儲在變量、對象、數(shù)組中,還可作為參數(shù)傳遞給其它函數(shù)。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
JS 函數(shù)(Function)是一組執(zhí)行特定任務(wù)(具有特定功能)的,可以重復(fù)使用的代碼塊;函數(shù)并不會自動運行,需要通過函數(shù)名調(diào)用才能運行。
函數(shù)還可以存儲在變量、對象、數(shù)組中,而且函數(shù)還可以作為參數(shù)傳遞給其它函數(shù),或則從其它函數(shù)返回。
在javascript中,除了使用內(nèi)置函數(shù)外,我們也可以自行創(chuàng)建函數(shù)(自定義函數(shù)),然后在需要的地方調(diào)用這個函數(shù),這樣不僅可以避免編寫重復(fù)的代碼,還有利于代碼的后期維護。
JS 定義函數(shù)
JS 函數(shù)聲明需要以 function 關(guān)鍵字開頭,之后為要創(chuàng)建的函數(shù)名稱,function 關(guān)鍵字與函數(shù)名稱之間使用空格分開,函數(shù)名之后為一個括號( ),括號中用來定義函數(shù)中要使用的參數(shù)(多個參數(shù)之間使用逗號,分隔開),一個函數(shù)最多可以有 255 個參數(shù),最后為一個花括號{ },花括號中用來定義函數(shù)的函數(shù)體(即實現(xiàn)函數(shù)的代碼),如下所示:
function functionName(parameter_list) { // 函數(shù)中的代碼 }
示例代碼如下:
function sayHello(name){ document.write("Hello " + name); }
上面示例中定義了一個函數(shù) sayHello(),該函數(shù)需要接收一個參數(shù) name,調(diào)用該函數(shù)會在頁面中輸出“Hello ...”。
JS 調(diào)用函數(shù)
一旦定義好了一個函數(shù),我們就可以在當(dāng)前文檔的任意位置來調(diào)用它。調(diào)用函數(shù)非常簡單,只需要函數(shù)名后面加上一個括號即可,例如 alert()、write()。注意,如果在定義函數(shù)時函數(shù)名后面的括號中指定了參數(shù),那么在調(diào)用函數(shù)時也需要在括號中提供對應(yīng)的參數(shù)。
示例代碼如下:
function sayHello(name){ document.write("Hello " + name); } // 調(diào)用 sayHello() 函數(shù) sayHello('PHP中文網(wǎng)');
提示:JavaScript 對于大小寫敏感,所以在定義函數(shù)時 function 關(guān)鍵字一定要使用小寫,而且調(diào)用函數(shù)時必須使用與聲明時相同的大小寫來調(diào)用函數(shù)。
參數(shù)的默認值
在定義函數(shù)時,您可以為函數(shù)的參數(shù)設(shè)置一個默認值,這樣當(dāng)我們在調(diào)用這個函數(shù)時,如果沒有提供參數(shù),就會使用這個默認值作為參數(shù)值,如下例所示:
function sayHello(name = "World"){ document.write("Hello " + name); } sayHello(); // 輸出:Hello World sayHello('PHP中文網(wǎng)'); // 輸出:Hello PHP中文網(wǎng)
JS 函數(shù)返回值
在函數(shù)中可以使用 return 語句將一個值(函數(shù)的運行結(jié)果)返回給調(diào)用函數(shù)的程序,這個值可以是任何類型,例如數(shù)組、對象、字符串等。對于有返回值的函數(shù),我們可以會使用一個變量來接收這個函數(shù)的返回值,示例代碼如下:
function getSum(num1, num2){ return num1 + num2; } var sum1 = getSum(7, 12); // 函數(shù)返回值為:19 var sum2 = getSum(-5, 33); // 函數(shù)返回值為:28
提示:return 語句通常在函數(shù)的末尾定義,當(dāng)函數(shù)運行到 return 語句時會立即停止運行,并返回到調(diào)用函數(shù)的地方繼續(xù)執(zhí)行。
另外,一個函數(shù)只能有一個返回值,若要返回多個值則,則可以將值放入一個數(shù)組中,然后返回這個數(shù)組即可,如下例所示:
function division(dividend, divisor){ var quotient = dividend / divisor; var arr = [dividend, divisor, quotient] return arr; } var res = division(100, 4) document.write(res[0]); // 輸出:100 document.write(res[1]); // 輸出:4 document.write(res[2]); // 輸出:25
JS 函數(shù)表達式
函數(shù)表達式與聲明變量非常相似,是另外一種聲明函數(shù)的形式,語法格式如下:
var myfunction = function name(parameter_list){ // 函數(shù)中的代碼 };
參數(shù)說明如下:
myfunction:變量名,可以通過它來調(diào)用等號之后的函數(shù);
name:函數(shù)名,可以省略(一般情況下我們也會將其省略),如果省略那么該函數(shù)就會成為一個匿名函數(shù);
parameter_list:為參數(shù)列表,一個函數(shù)最多可以有 255 個參數(shù)。
示例代碼如下:
// 函數(shù)聲明 function getSum(num1, num2) { var total = num1 + num2; return total; } // 函數(shù)表達式 var getSum = function(num1, num2) { var total = num1 + num2; return total; };
上面示例中的兩個函數(shù)是等價的,它們的功能、返回值、調(diào)用方法都是相同的。
注意:在函數(shù)聲明中,不需要在右花括號后放置分號,但若使用函數(shù)表達式就應(yīng)該在表達式的最后以分號結(jié)尾。
函數(shù)聲明和函數(shù)表達式雖然看起來非常相似,但它們的運行方式是不同的,如下例所示:
declaration(); // 輸出: function declaration function declaration() { document.write("function declaration"); } expression(); // 報錯:Uncaught TypeError: undefined is not a function var expression = function() { document.write("function expression"); };
如上例所示,如果函數(shù)表達式在定義之前被調(diào)用,會拋出異常(報錯),但函數(shù)聲明則可以成功運行。這是因為在程序執(zhí)行前,JavaScript 會先對函數(shù)聲明進行解析,因此無論是在函數(shù)聲明前還是聲明后調(diào)用函數(shù)都是可行的。而函數(shù)表達式則是將一個匿名函數(shù)賦值給一個變量,所以在程序還沒有執(zhí)行到該表達式之前,相當(dāng)于函數(shù)還未定義,因此無法調(diào)用。
【推薦學(xué)習(xí):javascript高級教程】
以上是javascript function是什麼的詳細內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

WebSocket與JavaScript:實現(xiàn)即時監(jiān)控系統(tǒng)的關(guān)鍵技術(shù)引言:隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,即時監(jiān)控系統(tǒng)在各個領(lǐng)域中得到了廣泛的應(yīng)用。而實現(xiàn)即時監(jiān)控的關(guān)鍵技術(shù)之一就是WebSocket與JavaScript的結(jié)合使用。本文將介紹WebSocket與JavaScript在即時監(jiān)控系統(tǒng)中的應(yīng)用,並給出程式碼範(fàn)例,詳細解釋其實作原理。一、WebSocket技

如何使用WebSocket和JavaScript實現(xiàn)線上語音辨識系統(tǒng)引言:隨著科技的不斷發(fā)展,語音辨識技術(shù)已成為了人工智慧領(lǐng)域的重要組成部分。而基於WebSocket和JavaScript實現(xiàn)的線上語音辨識系統(tǒng),具備了低延遲、即時性和跨平臺的特點,成為了廣泛應(yīng)用的解決方案。本文將介紹如何使用WebSocket和JavaScript來實現(xiàn)線上語音辨識系

如何利用JavaScript和WebSocket實現(xiàn)即時線上點餐系統(tǒng)介紹:隨著網(wǎng)路的普及和技術(shù)的進步,越來越多的餐廳開始提供線上點餐服務(wù)。為了實現(xiàn)即時線上點餐系統(tǒng),我們可以利用JavaScript和WebSocket技術(shù)。 WebSocket是一種基於TCP協(xié)定的全雙工通訊協(xié)議,可實現(xiàn)客戶端與伺服器的即時雙向通訊。在即時線上點餐系統(tǒng)中,當(dāng)使用者選擇菜餚並下訂單

JavaScript和WebSocket:打造高效的即時天氣預(yù)報系統(tǒng)引言:如今,天氣預(yù)報的準(zhǔn)確性對於日常生活以及決策制定具有重要意義。隨著技術(shù)的發(fā)展,我們可以透過即時獲取天氣數(shù)據(jù)來提供更準(zhǔn)確可靠的天氣預(yù)報。在本文中,我們將學(xué)習(xí)如何使用JavaScript和WebSocket技術(shù),來建立一個高效的即時天氣預(yù)報系統(tǒng)。本文將透過具體的程式碼範(fàn)例來展示實現(xiàn)的過程。 We

如何使用WebSocket和JavaScript實現(xiàn)線上預(yù)約系統(tǒng)在當(dāng)今數(shù)位化的時代,越來越多的業(yè)務(wù)和服務(wù)都需要提供線上預(yù)約功能。而實現(xiàn)一個高效、即時的線上預(yù)約系統(tǒng)是至關(guān)重要的。本文將介紹如何使用WebSocket和JavaScript來實作一個線上預(yù)約系統(tǒng),並提供具體的程式碼範(fàn)例。一、什麼是WebSocketWebSocket是一種在單一TCP連線上進行全雙工

JavaScript教學(xué):如何取得HTTP狀態(tài)碼,需要具體程式碼範(fàn)例前言:在Web開發(fā)中,經(jīng)常會涉及到與伺服器進行資料互動的場景。在與伺服器進行通訊時,我們經(jīng)常需要取得傳回的HTTP狀態(tài)碼來判斷操作是否成功,並根據(jù)不同的狀態(tài)碼來進行對應(yīng)的處理。本篇文章將教你如何使用JavaScript來取得HTTP狀態(tài)碼,並提供一些實用的程式碼範(fàn)例。使用XMLHttpRequest

用法:在JavaScript中,insertBefore()方法用於在DOM樹中插入一個新的節(jié)點。這個方法需要兩個參數(shù):要插入的新節(jié)點和參考節(jié)點(即新節(jié)點將要插入的位置的節(jié)點)。

JavaScript中的HTTP狀態(tài)碼取得方法簡介:在進行前端開發(fā)中,我們常常需要處理與後端介面的交互,而HTTP狀態(tài)碼就是其中非常重要的一部分。了解並取得HTTP狀態(tài)碼有助於我們更好地處理介面?zhèn)骰氐馁Y料。本文將介紹使用JavaScript取得HTTP狀態(tài)碼的方法,並提供具體程式碼範(fàn)例。一、什麼是HTTP狀態(tài)碼HTTP狀態(tài)碼是指當(dāng)瀏覽器向伺服器發(fā)起請求時,服務(wù)
