99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

jQuery 上下文綁定

2018-07-24 11:49 更新

上下文綁定在函數(shù)型的語言當(dāng)中起著非常重要的作用。不過, jQuery 中對(duì)此似乎并沒有怎么強(qiáng)調(diào),它的很多函數(shù)都默認(rèn)處理了上下文,文檔中也會(huì)告訴你,在某個(gè)函數(shù)當(dāng)中, this 是什么東西,我覺得這種做法不太好。

jQuery 中有一個(gè)函數(shù)專門用于處理上下文綁定,雖然我覺得把 context 放在后面的格式非常別扭,不過好過沒有吧。

$.proxy()
為函數(shù)綁定上下文

它有兩種使用方法,第一種就是最普通的,提供函數(shù),和上下文對(duì)象,然后返回一個(gè)新函數(shù):

$.proxy( function, context )

第二種,是提供一個(gè)上下文對(duì)象,及在這個(gè)上下文當(dāng)中的一個(gè)成員名,然后把這個(gè)上下文綁定到這個(gè)成員之后,再返回這個(gè)成員。

$.proxy( context, name )

看下面的例子,來理解上下文:

var o = {
  x: '123',
  f: function(){console.log(this.x)},
}
var go = function(f){f()}

o.f() // 123
go(o.f) // undefined
go($.proxy(o.f, o)) //123
$.proxy(o, 'f')() //123

當(dāng)一個(gè)函數(shù)被傳遞之后,它就失去原先的上下文了。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)