JavaScript封裝是網頁常用的一種技巧。封裝指的是將程序內的某些特定功能單獨處理,使得外部程序只需調用該功能,而不需關注功能的內部實現。下面通過舉例教程,詳細介紹如何封裝JavaScript函數。
首先,我們先來看一個簡單的例子,該例子實現了一個求和功能:
function sum(num1, num2) { return num1 + num2; } var result = sum(2,4); console.log(result);
如上所示,該函數能夠求出傳入兩個參數的和,并在控制臺輸出結果。該函數雖然簡單,但如果項目中需要反復使用該功能,我們可以將其封裝起來,方便調用。
首先,我們將函數定義放到另一個函數內,然后將該內部函數封裝在一個函數對象中:
var operation = { sum: function (num1, num2) { return num1 + num2; } }; var result = operation.sum(2,4); console.log(result);
如上所示,我們將sum函數封裝在一個名為operation的對象中,緊接著,在調用時,只需要調用operation的sum方法,并傳入兩個參數,即可得到結果。
下面我們再來一個例子,該例子用來獲取當前時間:
function currentTime() { var time = new Date(); var hours = time.getHours(); var minutes = time.getMinutes(); var seconds = time.getSeconds(); hours = updateTime(hours); minutes = updateTime(minutes); seconds = updateTime(seconds); var currentTimeString = hours + ':' + minutes + ':' + seconds; return currentTimeString; } function updateTime(i) { if (i< 10) { i = '0' + i; } return i; } console.log(currentTime());
如上所示,該函數能夠獲取當前時間,并將時間以字符串形式返回。同樣,該函數也可以進行封裝,使得調用更加方便。
我們仍然將函數封裝在一個對象內:
var timeFunctions = { currentTime: function() { var time = new Date(); var hours = time.getHours(); var minutes = time.getMinutes(); var seconds = time.getSeconds(); hours = updateTime(hours); minutes = updateTime(minutes); seconds = updateTime(seconds); var currentTimeString = hours + ':' + minutes + ':' + seconds; return currentTimeString; } }; function updateTime(i) { if (i< 10) { i = '0' + i; } return i; } console.log(timeFunctions.currentTime());
如上所示,我們將獲取當前時間的函數以及更新時間的函數封裝在了名為timeFunctions的對象中,并通過調用timeFunctions對象的currentTime方法,實現獲取當前時間。可見封裝能夠大幅提高代碼的復用率,使得代碼更具可維護性,縮短開發時間,提高開發效率。
以上就是JavaScript函數封裝的簡單教程。通過該教程,我們可以更好地理解封裝的概念,以及在JavaScript項目中如何進行函數的封裝。
上一篇python畫畫有用嗎