javascript的自定義函數(shù)是什么

這篇文章主要講解了“javascript的自定義函數(shù)是什么”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“javascript的自定義函數(shù)是什么”吧!

為南宮等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及南宮網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站制作、成都做網(wǎng)站、南宮網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

自定義函數(shù)有:1、命名函數(shù),語法“function 函數(shù)名(){}”;2、匿名函數(shù),語法“var 變量名=function(){};”;3、對象函數(shù),語法“var 變量名=Function();”;4、自調(diào)函數(shù),將函數(shù)的定義與調(diào)用一并實現(xiàn)。

本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

函數(shù)是一組延遲動作集,可以通過事件觸發(fā)或在其他腳本中調(diào)用。

JavaScript 中的兩類函數(shù):預(yù)定義函數(shù)、自定義函數(shù)

  • 預(yù)定義函數(shù)

    • 【parseInt / parseFloat】string 轉(zhuǎn) int/float

    • 【isNaN / isFinite】檢測參數(shù)是否為 非數(shù)字值/無窮數(shù)

    • 【escape / unescape】對字符串 編碼/解碼

    • 【eval】執(zhí)行 JavaScript 腳本

    • 【alert / confirm / prompt】三種警示框

  • 自定義函數(shù)

    • 【命名函數(shù)】function funcName(){}

    • 【匿名函數(shù)】var x=function(){};

    • 【對象函數(shù)】var x=Function();

    • 【自調(diào)函數(shù)】(function(){}());

自定義函數(shù)

JavaScript 中除了可以使用預(yù)定義函數(shù)外,還可以使用自定義函數(shù)。

在自定義函數(shù)時既不需要聲明函數(shù)的參數(shù)類型,也不需要聲明函數(shù)的返回類型。

JavaScript 目前支持的自定義方式有:

  • 命名函數(shù)

  • 匿名函數(shù)

  • 對象函數(shù)

  • 自調(diào)函數(shù)

1. 命名函數(shù)

  • 命名函數(shù)通過 function 關(guān)鍵詞進行定義,其后是函數(shù)名和括號 ()。

  • 完成函數(shù)的定義后,函數(shù)并不會自動執(zhí)行,只有通過事件或腳本調(diào)用時才會執(zhí)行。

  • 在同一個 <script></script> 標簽中,函數(shù)的調(diào)用可以在函數(shù)定義之前,也可以在函數(shù)定義之后。

  • 在不同的 <script></script> 標簽中,函數(shù)的定義必須在函數(shù)的調(diào)用之前,否則調(diào)用無效。

格式如下:

function funcName([parameters]){
  statements;
  [return 表達式;]
}

2. 匿名函數(shù)

  • 匿名函數(shù)的定義格式與命名函數(shù)基本相同,只是沒有提供函數(shù)的名稱,并且結(jié)束位置應(yīng)有分號;  。由于沒有函數(shù)名字,所以需要使用變量對匿名函數(shù)進行接受,方便后面函數(shù)的調(diào)用。

  • 命名函數(shù)對初學者來說,上手容易,但可讀性較差。匿名函數(shù)使用相對更加方便,可讀性更好,當前比叫流行的 JavaScript 框架基本上都采用匿名函數(shù)的方式來定義函數(shù)。

格式如下:

var x=function([parameters]){
  statements;
  [return 表達式;]
};

3. 對象函數(shù)

JavaScript 提供了 Function 類,用于定義函數(shù)。格式如下:

var func1=new Function([parameters],statements;);
  • Function 是用來定義函數(shù)的關(guān)鍵字,首字母必須大寫。

  • parameters 為函數(shù)參數(shù),可選。當有多個參數(shù)時,參數(shù)之間用逗號, 隔開。

  • statements 為函數(shù)執(zhí)行體。當有多條執(zhí)行語句時,語句之間以分號; 隔開。

4. 自調(diào)用函數(shù)

一般情況下,函數(shù)本身不會自動執(zhí)行,只有調(diào)用時才會被執(zhí)行。所以 JavaScript 提供了一種自調(diào)用函數(shù),將函數(shù)的定義與調(diào)用一并實現(xiàn)。格式如下:

(function([parameters]){
  statements;
  [return 表達式;]
})([params]);
  • 需要使用小括號() 將自調(diào)函數(shù)括起來,并以分號; 結(jié)束。

  • parameters 為形參,可選。參數(shù)之間以逗號, 隔開。

  • params 為實參,在函數(shù)調(diào)用時傳入數(shù)據(jù)。

代碼示例:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>test</title>
</head>
<body>
  <input id="btn1" type="button" onclick="button1Event()" value="button1" />
  <input id="btn2" type="button" onclick="button2Event()" value="button2" /><br />
  <input id="a" type="text"/><input id="b" type="text"/><br />
  <input id="sumBtn" type="button" value="x+y" onclick="sum()"/>
  
  <script type="text/javascript">
    function button1Event(){/* 命名函數(shù) */
        alert("命名函數(shù):按鈕1被點擊!");
    }
    var x=function(){/* 匿名函數(shù) */
        alert("匿名函數(shù):按鈕2被點擊!");
    }
    button2Event=x;
    
    var y=new Function("a", "b", "return a+b");/* 對象函數(shù) */
    sum=function(){
        var aValue=parseInt(document.getElementById("a").value,10);
        var bValue=parseInt(document.getElementById("b").value,10);
        alert("對象函數(shù):"+y(aValue,bValue));
    }
    
    var tema=2;var temb=2;
    (function(a,b){/* 自調(diào)函數(shù) */
        alert("自調(diào)函數(shù):"+(a+b));
    })(tema,temb);
  </script>
</body>
</html>

效果演示:

javascript的自定義函數(shù)是什么

javascript的自定義函數(shù)是什么

javascript的自定義函數(shù)是什么

感謝各位的閱讀,以上就是“javascript的自定義函數(shù)是什么”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對javascript的自定義函數(shù)是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

新聞標題:javascript的自定義函數(shù)是什么
瀏覽路徑:http://muchs.cn/article26/pihejg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計網(wǎng)站設(shè)計公司、小程序開發(fā)、網(wǎng)站導(dǎo)航、商城網(wǎng)站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)