欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中的函數(shù)(二)

 更新時(shí)間:2015年12月23日 14:36:45   作者:蘇小鈴  
函數(shù)是由事件驅(qū)動(dòng)的或者當(dāng)它被調(diào)用時(shí)執(zhí)行的可重復(fù)使用的代碼塊。本文給大家介紹介紹javascript中的函數(shù)(二),對(duì)javascript函數(shù)相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧

函數(shù)是由事件驅(qū)動(dòng)的或者當(dāng)它被調(diào)用時(shí)執(zhí)行的可重復(fù)使用的代碼塊。

JavaScript 函數(shù)語(yǔ)法

函數(shù)就是包裹在花括號(hào)中的代碼塊,前面使用了關(guān)鍵詞 function:

function functionname()
{
這里是要執(zhí)行的代碼
}

當(dāng)調(diào)用該函數(shù)時(shí),會(huì)執(zhí)行函數(shù)內(nèi)的代碼。

可以在某事件發(fā)生時(shí)直接調(diào)用函數(shù)(比如當(dāng)用戶點(diǎn)擊按鈕時(shí)),并且可由 JavaScript 在任何位置進(jìn)行調(diào)用。

提示:JavaScript 對(duì)大小寫敏感。關(guān)鍵詞 function 必須是小寫的,并且必須以與函數(shù)名稱相同的大小寫來(lái)調(diào)用函數(shù)。

1. 函數(shù)的作用域

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

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

上述這就是全局變量,函數(shù)體內(nèi)部也可以使用。

function f(){
  var v = 1;
}

而這個(gè)就是局部變量,函數(shù)體外部無(wú)法讀取。

2. 閉包

閉包就是定義在函數(shù)體內(nèi)部的函數(shù)。

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

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

閉包的特點(diǎn)就在于,在函數(shù)體外部可以讀取函數(shù)體內(nèi)部的變量。

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

上面的代碼顯示,原先在函數(shù)f外部,我們是沒(méi)有辦法讀取內(nèi)部變量v的。但是,借助閉包c(diǎn),可以讀到這個(gè)變量。

閉包不僅可以讀取函數(shù)內(nèi)部變量,還可以使得內(nèi)部變量記住上一次調(diào)用時(shí)的運(yùn)算結(jié)果。

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

函數(shù)內(nèi)部的b變量,每一次調(diào)用都是在上一次調(diào)用時(shí)的值的基礎(chǔ)上進(jìn)行計(jì)算的。

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

相關(guān)文章

最新評(píng)論