文章目錄
- 最簡單的函數(方法):
- 表單驗證函式
- 對象中的方法(函數)
- 方法中的子方法
- 方法的傳回值
- 方法可以當做參數進行傳遞(JS中的委託,回呼函數)
回到目錄
上一文章主要說的是JS中的類,有很多朋友回複了我的文章,在此很感謝大家,也對一些朋友提出的問題進行了回複,“類”這東西,只是一種思想,我們不應該把重點放在“某種語言是否提供類,或者是否實現了類”,這是不重要的,重要的是物件導向中的類的思想!
今天主要說的是方法,JS中的方法也叫做函數function,它將一些有關係的程式碼群組織在一起,形成一個整體,這類似於物件導向中的封裝,你不需要瞭解方法的實現細節,你只要去調用它,瞭解方法的簽名即可。
最簡單的函數(方法):
<script type="text/javascript"> //加運算 function Sum(x, y) { return parseInt(x) + parseInt(y); } //減運算 function Sub(x, y) { return parseInt(x) - parseInt(y); } </script>
表單驗證函式
下面是一個表單驗證函式,如果驗證成功就提交表單,不功能就返回錯誤訊息
<script> //表單驗證,可以在多個表單中使用這一個函數來完成驗證 function CheckForm() { var name = document.getElementById("name"); var password = document.getElementById("password"); var email = document.getElementById("email"); if (name == "") { alert("請輸入使用者名稱"); return false; } if (password == "") { alert("請輸入密碼"); return false; } if (email == "") { alert("請輸入郵件地址"); return false; } document.getElementsByTagName("form")[0].submit(); return true; }</script>
對象中的方法(函數)
事實上JS中的函數就是這樣內容,而函數也可以在對象中出現,類似的代碼在之前的檔案也出現過,再寫一下:
//道具對象 var Props = { init: function () {//對象中的方法 //對象初始化 }, GetHtmlTags: function () { //構建HTML代碼塊 }, Language: ["中文", "英文"], Name: "道具" };
方法中的子方法
別外,方法中還可以有子方法,在子方法中可以對父方法裡的屬性進行重寫操作,以改變它的值,代碼如下:
function Big() { var name = "方法big"; function Small() { name = "方法small"; } Small(); return name; } alert(Big());
方法的傳回值
方法的傳回值可以是空,也可以是布爾型,整形,字串,而且還可以是一個對象,代碼如下:
function ReturnObject() { var name = "zzl"; return {//返回一個對象,對象裡的屬性對外公開 Name: name, Age: 30 }; } alert(ReturnObject().Name);
方法可以當做參數進行傳遞(JS中的委託,回呼函數)
一個方法可以作為其一個方法的接收參數,這一般稱為回呼函數,在C#語言裡叫做委託。
//函數作為參數進行傳遞 function AlertBox(msg, callback) { if (msg != null) { callback(msg); } else { alert("null message"); } } //js的回呼函數 AlertBox("可愛的可愛", function (msg) { alert(msg); });
今天講函數(方法)就差不多了,也是自己盡興寫的,沒什麼頭尾,寫在那裡算那裡,但基本上我知道的函數用法都說了,呵呵 !
感謝您的閱讀吧!
回到目錄