天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

javascript必知必會(huì)之closure

  摘要

  本系列博文主要談一些在 Javascript 使用中經(jīng)常會(huì)混淆的高級(jí)應(yīng)用,包括: prototype, closure, scope, this關(guān)鍵字. 對(duì)于一個(gè)需要提高自己Javascript水平的程序員,這些都是必須要掌握的.本節(jié)主要介紹closure.

  什么是closure?

  一種定義是:A "closure" is an expression (typically a function) that can have free variables together with an environment that binds those variables (that "closes" the expression).

  我的理解是: closure 是一個(gè)表達(dá)式(通常是一個(gè)函數(shù)), 這個(gè)表達(dá)式與一個(gè) 環(huán)境 共享著一些自由變量, 而這個(gè) 環(huán)境 則 綁定 著那些自由變量(或者說(shuō) 結(jié)束 這個(gè)表達(dá)式, 這也是所謂closure 的名字由來(lái)). 所謂的 環(huán)境 就是一個(gè)更大的block, 所有的自由變量在這個(gè) block 中 聲明(有意義). 而 綁定 也就是指這些自由變量的作用域就是這個(gè)環(huán)境.

  舉個(gè)簡(jiǎn)單的例子:

var flag = false;   //調(diào)試開(kāi)關(guān)
//
env 既是所謂的環(huán)境
//
而inner就是所謂的表達(dá)式, name即是所謂的自由變量
function env() //整個(gè)env可以看作是一個(gè)closure
{
var name = "zhutao";
function inner()
{
return name + " is a student.";
}
return inner; //返回的是一個(gè)內(nèi)部函數(shù)
}//closure結(jié)束
flag = true;
if (flag)
{
// 此處是最神奇的地方, 代碼執(zhí)行在此處, inner函數(shù)其實(shí)已經(jīng)出了env的body,
//
而仍然能夠被引用, 這就是所謂形成了一個(gè) closure
var inner_func_ref = env(); // 這時(shí)候inner_func_ref引用的就是inner()函數(shù)對(duì)象
alert(inner_func_ref()); // zhutao is a student.
}

it知識(shí)庫(kù)javascript必知必會(huì)之closure,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 99视频久九热精品 | XXX国产麻豆HD | 一边摸一边桶一边脱免费 | 亚洲国产日韩制服在线观看 | 黑人 尺寸 强行害怕 痛哭 | ai换脸在线全集观看 | 国产 亚洲 日韩 欧美 在线观看 | 台湾佬休闲中性娱乐网 | 快播在线电影网站 | 村妇偷人内射高潮迭起 | 久久国产精品福利影集 | 永久免费的无码中文字幕 | 欧美片第1页 综合 | 青春禁区动漫免费观看 | 闺蜜撬开我的腿用黄瓜折磨我 | 麻豆三级电影 | 公么我好爽再深一点 | 综合一区无套内射中文字幕 | 87影院午夜福利 | 亚洲国产中文在线视频 | 啪啪漫画无遮挡全彩h网站 啪啪漫画无遮挡全彩h同人 | 午夜免费小视频 | 亚洲精品无夜久久久久久久久 | 无码一卡二卡三卡四卡 | 97精品国产亚洲AV超碰 | voyeurhit农村夫妻偷拍 | 6080yy亚洲久久无码 | 午夜想想爱 | 色狠狠色综合吹潮 | 专干老肥熟女视频网站300部 | 99国内偷揿国产精品人妻 | 动听968| 久久久性色精品国产免费观看 | 亚洲精品另类有吗中文字幕 | 色爱区综合小说 | 男女久久久国产一区二区三区 | 91久久偷偷看嫩草影院无费 | 色哟哟网站入口在线观看视频 | 一级特黄aa大片欧美 | 亚洲大爷操 | 久久亚洲精品专区蓝色区 |