如何改變函式的執行上下文簡單介紹

admin發表於2017-03-30

有時候可能我們需要確切的為一個函式指定執行上下文。

下面就通過程式碼例項介紹一下如何利用jQuery實現此功能。

由於jQuery已經提供了這樣的方法,所以非常的簡單。

程式碼如下:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style>
body{
  font-size:12px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
$(function(){
  var obj={
    webName:"螞蟻部落",
    url:"softwhy.com"
  }
  function func(){
    $("#show").text(this.webName);
  }
  var newFunc=$.proxy(func,obj);
  newFunc();
});
</script>
</head>
<body>
<div id="show"></div>
</body>
</html>

上面的程式碼將使用$.proxy()方法返回一個新的函式,函式體內容和原來的函式完全相同,但是它的上下文物件已經被改變。

$.proxy()方法可以參閱jQuery.proxy()一章節。

相關文章