js函式使用的幾種方式

admin發表於2017-04-15

本章節分享一下,JavaScript中函式使用的幾種方式。

一.API模式:

(1).作為回撥函式:

作為回撥函式,其實就是將函式作為另一個函式的引數。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
function writeCode(callback){
  //執行一些事務
  callback();
}
function introduceBugs(){
  //引入漏洞
}
writeCode(introduceBugs);

我們可以將一個通用的函式作為回撥函式重複使用,把業務邏輯和通用函式分別開來,這樣就實現瞭解耦的目的。

(2).作為另一個函式的返回值:

函式的返回值,不僅僅可以是一個字串、數字,或者物件直接量等等,還可以是一個函式。

這也是閉包的實現方式,可以使用這個閉包儲存一些私有資料,而這些資料僅可被該返回函式訪問,但外部程式碼無法訪問。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
var setup = function(){
  var count = 0;
  return function(){
    return (count += 1);
  };
};
var next = setup();
console.log(next());
console.log(next());
console.log(next());

(3).物件作為函式的引數:

[JavaScript] 純文字檢視 複製程式碼
function antzone(webName, age, address) {
  //code
}

看上面的函式,我們為其傳遞了若干引數,但是這些引數也許還會增加,如果為其傳遞一個配置物件,會更加方便。

[JavaScript] 純文字檢視 複製程式碼
var config = {
  webName:"螞蟻部落",
  age:4,
  address:"青島市南區"
}
function antzone(config) {
  //code
}

二.初始化模式:

可以幫助你在不汙染全域性名稱空間的情況下,使用臨時變數以一種更加簡潔,結構化的方式執行初始化。

最常見的形式就是匿名自執行函式,程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
(function () {
  var webName = "螞蟻部落";
  console.log(webName);
})()

相關文章