av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

JavaScript this關鍵字指向常用情況解析

瀏覽:95日期:2023-10-16 09:02:31

在之前寫代碼的經歷中,常常試過寫著寫著this就莫名其妙的不知道指向到哪里去了。今天看了曾探的javascript設計模式,里面特別談到了this在不同情況下指代的對象,非常有意思。

this指代的情況

this有以下4種情況:

1、對象.函數的形式調用:object.function();

2、普通函數的形式調用:function();

3、構造器調用;

4、Function.prototype.call或Function.prototype.apply調用;

1、對象.函數的形式調用

對象.函數方式調用時,指代該對象。

var obj = { num:1, getNum:function(){ alert(this.num);//輸出1 }}obj.getNum();

2、普通函數形式調用

普通函數的方式被調用時,this指向全局對象。

window.num = 2;var obj = { num:1, getNum:function(){ alert(this.num); }}obj.getNum();//彈出1var fun1 = obj.getNum;fun1(); //彈出2

太神奇了,直接調用函數 fun(); 與通過對象調用函數 xxx.fun(); this指代的對象不同。

3、構造器調用

為了能夠用上new關鍵字,javascript的創建對象可以這樣定義。

var person = function(){this.name = ’劉備’;}

在這種情況下,this指代這個正在創建中的對象。

var p = new person();alert(p.name);//彈出劉備

4、Function.prototype.call或Function.prototype.apply調用

var obj1 = { name:’關羽’, getName:function(){ return this.name; }}var obj2 = { name:’劉備’}alert(obj1.getName()); //關羽alert(obj1.getName.call(obj2)); //劉備

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 日韩精品一区二 | 午夜电影合集 | 亚洲激情第一页 | 国产高清一区二区三区 | 国产污视频在线 | 日韩福利在线 | 欧美日韩视频在线 | 成人黄色电影在线播放 | 午夜婷婷激情 | 欧美精品一区二区免费 | 亚洲精品一区二区 | 国产色黄 | 91在线电影| 精品久久久久国产 | 久久美女网| 亚洲一区二区三区视频 | 久久久.com | 精品久久久久久久久久久下田 | 91av亚洲| 欧美综合一区二区 | 久久久久国产一区二区三区 | 精品亚洲一区二区三区四区五区 | 亚洲精品久久久久久久久久久 | 成人欧美一区二区 | 日本久久一区二区三区 | 天天玩天天操天天干 | 伊人精品国产 | 亚洲精品欧美一区二区三区 | 日韩三级一区 | 日韩欧美国产电影 | 91在线播| 日韩网站在线 | 蜜桃传媒一区二区 | 欧美一级片免费看 | 久久久国产一区二区三区 | 久久久久久久一区 | 在线黄| 欧美一级大片 | 黑人巨大精品欧美一区二区免费 | 日本黄色大片免费 | 久久激情网 |