方法中this指向的問題

来源:https://www.cnblogs.com/chenyingying0/archive/2020/02/22/12347016.html
-Advertisement-
Play Games

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>test</title> </head> <body> <button class="btn">按鈕</button> <script src="../js/j ...


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>
    <button class="btn">按鈕</button>

    <script src="../js/jquery.js"></script>
    <script>
        var obj={
            show:function(){
                console.log(this,1);
            },
            hide:function(){
                console.log(this,2);
            }
        }

        //這次只是綁定了事件,真正調用時是在hover的時候
        //因此調用這個方法的實際是hover的元素
        $(".btn").hover(obj.show,obj.hide);//this指向調用obj.show這個方法的元素

    </script>
</body>
</html>

這裡只是綁定了事件,函數真正執行是在元素被hover的時候,因此this指向調用該方法的元素

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>
    <button class="btn">按鈕</button>

    <script src="../js/jquery.js"></script>
    <script>
        var obj={
            show:function(){
                console.log(this,1);
            },
            hide:function(){
                console.log(this,2);
            }
        }

        $(".btn").hover(function(){
            obj.show();//方法是obj直接調用的,因此this指向obj
        },function(){
            obj.hide();
        });
    </script>
</body>
</html>

這裡的方法是在匿名函數中直接調用的(加了()小括弧表示調用)

因此this指向調用該方法的obj對象

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Waiting for another flutter command to release the startup lock… 異常解決 平時我們在開發flutter過程中,在執行flutter packages get 命令 或者 flutter packages upgrade之後, 經常遇到 ...
  • 轉載請標明出處:https:////www.cnblogs.com/tangZH/p/12343786.html APT 是Annotation Processing Tool 的簡稱。 它是註解處理器,在處理Annotation時可以根據源文件中的Annotation生成額外的源文件和其它的文件( ...
  • 前言 網上關於 Context 的文章也已經有不少了,比如值得參考的有: "Android Context完全解析,你所不知道的Context的各種細節" "Android Context 到底是什麼?" 但看了一下,發現還有值得討論的地方,比如這個等式: Context個數 = Service 個 ...
  • 1.真機配置包路徑 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 2.配置文件路徑 ~/Library/MobileDevice/Provisioning Profiles 3 ...
  • 滾動條常見樣式展示 overflow-x: hidden;/*是否對內容的左/右邊緣進行裁剪*/overflow-y: hidden;/*是否對內容的上/下邊緣進行裁剪*/overflow:scroll;/*左右滾動*/overflow: hidden;/*截取*/overflow: auto;/*... ...
  • 對象對於JavaScript至關重要,在ES6中對象又加了很多新特性。 對象字面量:屬性的簡潔表示法 ES6允許對象的屬性直接寫變數,這時候屬性名是變數名,屬性值是變數值。 let attr1 = "ES6"; let attr2 = 'testDemo'; let testObj = {attr1 ...
  • 有關浮動和清浮動問題,個人理解是float:left或者float:right的css樣式打破div標準流獨占一行的傳統,脫離了文檔流,所造成的浮動頁面影響類似"捆橡皮筋,當你把橡皮都拿走了,橡皮筋就回縮了",這時候,你要做的就是考慮如何有效的防止橡皮筋回縮,就是防止我們佈局的div盒子回縮,那清浮... ...
  • 如何通過absoulue與relative配合把一個盒子或者是把2個div塊同時放到頁面中央部分?定位完成後為什麼又需要margin-left與margin-top各往回走50%的長度,別忘記用z-index定位高度,請看下麵代碼展示: ...
一周排行
    -Advertisement-
    Play Games
  • .Net8.0 Blazor Hybird 桌面端 (WPF/Winform) 實測可以完整運行在 win7sp1/win10/win11. 如果用其他工具打包,還可以運行在mac/linux下, 傳送門BlazorHybrid 發佈為無依賴包方式 安裝 WebView2Runtime 1.57 M ...
  • 目錄前言PostgreSql安裝測試額外Nuget安裝Person.cs模擬運行Navicate連postgresql解決方案Garnet為什麼要選擇Garnet而不是RedisRedis不再開源Windows版的Redis是由微軟維護的Windows Redis版本老舊,後續可能不再更新Garne ...
  • C#TMS系統代碼-聯表報表學習 領導被裁了之後很快就有人上任了,幾乎是無縫銜接,很難讓我不想到這早就決定好了。我的職責沒有任何變化。感受下來這個系統封裝程度很高,我只要會調用方法就行。這個系統交付之後不會有太多問題,更多應該是做小需求,有大的開發任務應該也是第二期的事,嗯?怎麼感覺我變成運維了?而 ...
  • 我在隨筆《EAV模型(實體-屬性-值)的設計和低代碼的處理方案(1)》中介紹了一些基本的EAV模型設計知識和基於Winform場景下低代碼(或者說無代碼)的一些實現思路,在本篇隨筆中,我們來分析一下這種針對通用業務,且只需定義就能構建業務模塊存儲和界面的解決方案,其中的數據查詢處理的操作。 ...
  • 對某個遠程伺服器啟用和設置NTP服務(Windows系統) 打開註冊表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer 將 Enabled 的值設置為 1,這將啟用NTP伺服器功 ...
  • title: Django信號與擴展:深入理解與實踐 date: 2024/5/15 22:40:52 updated: 2024/5/15 22:40:52 categories: 後端開發 tags: Django 信號 松耦合 觀察者 擴展 安全 性能 第一部分:Django信號基礎 Djan ...
  • 使用xadmin2遇到的問題&解決 環境配置: 使用的模塊版本: 關聯的包 Django 3.2.15 mysqlclient 2.2.4 xadmin 2.0.1 django-crispy-forms >= 1.6.0 django-import-export >= 0.5.1 django-r ...
  • 今天我打算整點兒不一樣的內容,通過之前學習的TransformerMap和LazyMap鏈,想搞點不一樣的,所以我關註了另外一條鏈DefaultedMap鏈,主要調用鏈為: 調用鏈詳細描述: ObjectInputStream.readObject() DefaultedMap.readObject ...
  • 後端應用級開發者該如何擁抱 AI GC?就是在這樣的一個大的浪潮下,我們的傳統的應用級開發者。我們該如何選擇職業或者是如何去快速轉型,跟上這樣的一個行業的一個浪潮? 0 AI金字塔模型 越往上它的整個難度就是職業機會也好,或者說是整個的這個運作也好,它的難度會越大,然後越往下機會就會越多,所以這是一 ...
  • @Autowired是Spring框架提供的註解,@Resource是Java EE 5規範提供的註解。 @Autowired預設按照類型自動裝配,而@Resource預設按照名稱自動裝配。 @Autowired支持@Qualifier註解來指定裝配哪一個具有相同類型的bean,而@Resourc... ...