最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript實現(xiàn)方法調(diào)用與方法觸發(fā)小結(jié)

 更新時間:2016年03月26日 15:45:57   投稿:hebedich  
這篇文章主要介紹了javascript實現(xiàn)方法調(diào)用與方法觸發(fā)小結(jié)的相關資料,需要的朋友可以參考下

在js中,this關鍵字是一個比較讓人有意思的東西,但是它的指向經(jīng)常讓初學者摸不著頭腦。

  其實要理解這個關鍵字,需要理清兩個問題——“方法的調(diào)用和方法的觸發(fā)”

  下面先看一段代碼

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>function</title>
<script>
function showThis(){
  console.info(this);
}
  
function Test1(){
  this.f=showThis;
}
function Test2(){
  this.f=function(){
    showThis();
  }
}

showThis();//window
new Test1().f();//Test1  
new Test2().f();//window
</script>
</head>
<body>
</body>
</html> 

  20行打印出window對象,這個很容易理解,但是21行打印出Test1的實例對象,而22行卻打印出window對象。查看Test1和Test2的構造,發(fā)現(xiàn)方法f最終都執(zhí)行了showThis方法。但是showThis中的this指向卻不同。這是因為Test1中的f方法直接指向showThis,new Test1().f()是以Test1 的實例直接調(diào)用showThis方法,調(diào)用者是Test1的實例。而new Test2().f()是在Test2的實例方法f中觸發(fā)window對象的showThis方法,其中的this就是指向其調(diào)用者window而不是觸發(fā)者Test2的實例。

  至此可以發(fā)現(xiàn)。this指向的是調(diào)用者,而觸發(fā)者只是推進調(diào)用者執(zhí)行指定方法而已。

相關文章

最新評論

西青区| 寻乌县| 阿勒泰市| 甘德县| 房产| 弥勒县| 香港| 新民市| 新密市| 徐汇区| 新蔡县| 永仁县| 文山县| 那曲县| 米泉市| 晋城| 仙居县| 安达市| 新巴尔虎右旗| 青冈县| 泰兴市| 广西| 柳河县| 关岭| 且末县| 周宁县| 大理市| 芜湖市| 廉江市| 宜兰市| 民乐县| 阜新| 临汾市| 贵州省| 宁城县| 禹城市| 大埔区| 弥勒县| 阆中市| 雷波县| 高唐县|