溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

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

發(fā)布時(shí)間:2022-03-29 09:40:22 來(lái)源:億速云 閱讀:355 作者:iii 欄目:web開(kāi)發(fā)

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

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

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

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

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

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

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

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

    • 【escape / unescape】對(duì)字符串 編碼/解碼

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

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

  • 自定義函數(shù)

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

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

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

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

自定義函數(shù)

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

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

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

  • 命名函數(shù)

  • 匿名函數(shù)

  • 對(duì)象函數(shù)

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

1. 命名函數(shù)

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

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

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

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

格式如下:

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

2. 匿名函數(shù)

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

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

格式如下:

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

3. 對(duì)象函數(shù)

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

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

  • parameters 為函數(shù)參數(shù),可選。當(dāng)有多個(gè)參數(shù)時(shí),參數(shù)之間用逗號(hào), 隔開(kāi)。

  • statements 為函數(shù)執(zhí)行體。當(dāng)有多條執(zhí)行語(yǔ)句時(shí),語(yǔ)句之間以分號(hào); 隔開(kāi)。

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

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

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

  • parameters 為形參,可選。參數(shù)之間以逗號(hào), 隔開(kāi)。

  • params 為實(shí)參,在函數(shù)調(diào)用時(shí)傳入數(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被點(diǎn)擊!");
    }
    var x=function(){/* 匿名函數(shù) */
        alert("匿名函數(shù):按鈕2被點(diǎn)擊!");
    }
    button2Event=x;
    
    var y=new Function("a", "b", "return a+b");/* 對(duì)象函數(shù) */
    sum=function(){
        var aValue=parseInt(document.getElementById("a").value,10);
        var bValue=parseInt(document.getElementById("b").value,10);
        alert("對(duì)象函數(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)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)javascript的自定義函數(shù)是什么這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI