色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

javascript必知必會(huì)之this關(guān)鍵字及scope

  Javascript this關(guān)鍵字一般來說大家并不陌生,但是如何更好的用好Javascript this關(guān)鍵字卻需要我們仔細(xì)思考,希望本文對(duì)廣大程序員有所幫助。

  摘要

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

  本節(jié)主要介紹this關(guān)鍵字和scope.

  Contents

  摘要引入this關(guān)鍵字關(guān)于apply和callscope詳述一些說明結(jié)論后記參考資料本文的源碼

  引入

  作為一個(gè)程序員, 你可能早已經(jīng)習(xí)慣于面向?qū)ο笳Z(yǔ)言中指代當(dāng)前對(duì)象的引用(或者指針), 如的c++中的this或者 Python 中的self,當(dāng)然具有OO屬性( Javascript 其實(shí)更多的是一種所謂的函數(shù)式語(yǔ)言)的 Javascript 同樣, 它也具有引用當(dāng)前屬性的對(duì)象的指針(或者引用), 也就是this關(guān)鍵字.

  為了理解this關(guān)鍵字,如果你只想記住一句話,那應(yīng)該是 this關(guān)鍵字總是指向當(dāng)前函數(shù)的所有者對(duì)象(執(zhí)行空間), 至于這句話如何理解, 可以參見下面的詳細(xì)說明.

  那么什么是 scope 呢?

  wikipedia 中的解釋是 In computer programming, scope is an enclosing context where values and expressions are associated. 中文即是所謂的 作用域, 它指明的是一個(gè)數(shù)值或者表達(dá)式所關(guān)聯(lián)的上下文(能夠被引用的執(zhí)行空間).

  scope 與this有什么關(guān)系呢? 如果從上面的定義來看, this指向的總是當(dāng)前引用此函數(shù)的對(duì)象,而當(dāng)你要判斷當(dāng)前引用的對(duì)象時(shí), 這時(shí)你就得弄清楚當(dāng)前函數(shù)所在的 scope. 具體可見下面的分析.

  Javascript this關(guān)鍵字

  請(qǐng)看下面的幾個(gè)例子.

  一個(gè) Python 的例子:

class Person(object):
"""a person class
"""
def __init__(self, name):
self.name
= name #這里的self指向的是實(shí)例化后的對(duì)象,如下面中的zhutao
def get_name(self):
return self.name
zhutao
= Person("zhutao")
print zhutao.name

it知識(shí)庫(kù)javascript必知必會(huì)之this關(guān)鍵字及scope,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 鲜城| 邛崃市| 衢州市| 泗洪县| 抚远县| 基隆市| 吴忠市| 江陵县| 台安县| 恩平市| 眉山市| 韶关市| 永顺县| 井研县| 岳阳市| 建宁县| 安义县| 清原| 沽源县| 丘北县| 阳谷县| 沧州市| 慈利县| 罗甸县| 余姚市| 龙山县| 壤塘县| 富宁县| 柳河县| 镇沅| 曲沃县| 贵溪市| 金溪县| 七台河市| 双流县| 登封市| 乌兰浩特市| 永福县| 濉溪县| 安国市| 静海县|