DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JavaScript中的函數(二)
JavaScript中的函數(二)
編輯:關於JavaScript     

函數是由事件驅動的或者當它被調用時執行的可重復使用的代碼塊。

JavaScript 函數語法

函數就是包裹在花括號中的代碼塊,前面使用了關鍵詞 function:

function functionname()
{
這裡是要執行的代碼
}

當調用該函數時,會執行函數內的代碼。

可以在某事件發生時直接調用函數(比如當用戶點擊按鈕時),並且可由 JavaScript 在任何位置進行調用。

提示:JavaScript 對大小寫敏感。關鍵詞 function 必須是小寫的,並且必須以與函數名稱相同的大小寫來調用函數。

1. 函數的作用域

作用域是指變量的存在的范圍。javascript中有兩種作用域,一種是全局作用域,變量在整個程序中一直存在,另一種是函數作用域,變量只存在於函數體內部。在函數體外部聲明的變量就是全局變量,它也可以在函數體內部讀取。

var v = 1;
function f(){
   console.log(v);
}
f();

上述這就是全局變量,函數體內部也可以使用。

function f(){
  var v = 1;
}

而這個就是局部變量,函數體外部無法讀取。

2. 閉包

閉包就是定義在函數體內部的函數。

function f() {
  var c = function (){}; 
}

上訴代碼中c是定義在函數體f中的,c就是閉包。

閉包的特點就在於,在函數體外部可以讀取函數體內部的變量。

function f() {
  var v = 1;
  var c = function (){
    return v;
  };
  return c;
}
var o = f();
o();
// 1

上面的代碼顯示,原先在函數f外部,我們是沒有辦法讀取內部變量v的。但是,借助閉包c,可以讀到這個變量。

閉包不僅可以讀取函數內部變量,還可以使得內部變量記住上一次調用時的運算結果。

function f(b) {
  return function () { 
    return b++;
  }
}
var b= f(5);
b() // 5
b() // 6
b() // 7

函數內部的b變量,每一次調用都是在上一次調用時的值的基礎上進行計算的。

以上所述是小編給大家介紹的JavaScript中的函數(二) 的全部敘述,希望大家喜歡。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved