修改this的指向

来源:https://www.cnblogs.com/xuxuya/archive/2019/10/15/11681384.html
-Advertisement-
Play Games

call apply bind 返回的是一個修改後的函數。需要另外調用。 ...


call

var a={
    name:'xuux',
    fn:function(a,b){
        console.log(a+b);//3
        console.log(this);//{name: "xuux", fn: ƒ}
    }
}
var b=a.fn;
b.call(a,1,2);//傳入的參數要分別放入
console.log(b);//ƒ (a,b){console.log(a+b); console.log(this);}

apply

var a={
    name:'xuux',
    fn:function(a,b){
        console.log(a+b);//3
        console.log(this);//{name: "xuux", fn: ƒ}
    }
}
var b=a.fn;
b.apply(a,[1,2]);//傳入的參數用數組存放
console.log(b);//ƒ (a,b){console.log(a+b); console.log(this);}

bind  返回的是一個修改後的函數。需要另外調用。

var a={
    name:'xuux',
    fn:function(a,b){
        console.log(a+b);//3
        console.log(this);//{name: "xuux", fn: ƒ}
    }
}
var b=a.fn;
var c=b.bind(a,1);//傳入的參數按順序賦值
c(2);

 


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

-Advertisement-
Play Games
更多相關文章
  • 1. 可以用@property語法來定義對象中所封裝的數據。 2. 通過“修飾詞”來指定存儲數據所需的正確語義。 3. 在設置屬性所對應的實例變數時,一定要遵從該屬性所聲明的語義。 4. 開發iOS程式時應該使用nonatomic屬性,因為atomic(同步鎖)屬性嚴重影響性能。 ...
  • 1. 應該用枚舉表示狀態機的狀態、傳遞給方法的選項以及狀態碼等值,給這些值起個易懂的名字,就像監聽網路狀態的枚舉。 2. 如果把傳遞給某個方法的選項表示為枚舉類型,而多個選項又可同時使用,那麼就將各選項定義為2的冪,以便通過按位或操作將其組合起來。 3. 用 NS_ENUM 與 NS_O... ...
  • 本篇記錄的是使用Jsoup框架爬取網頁內容,結合Android的RecyclerView,從而實現批量下載小說的功能(也是我的APP "星之小說下載器Android版" 的核心功能), 思路僅供參考 本文使用了AsyncTask來實現下載功能,不懂使用的可以參考一下我的文章 "Android開發—— ...
  • 換膚思路: 1.什麼時候換膚? xml載入前換膚,如果xml載入後換膚,用戶將會看見換膚之前的色彩,用戶體驗不好。 2.皮膚是什麼? 皮膚就是apk,是一個資源包,包含了顏色、圖片等。 3.什麼樣的控制項應該進行換膚? 包含背景圖片的控制項,例如textView文字顏色。 4.皮膚與已安裝的資源如何匹配 ...
  • 隊列是常用的數據結構之一,只允許在表的前端(隊頭)進行刪除操作(出隊),在表的後端(隊尾)進行插入操作(入隊)。特點是先進先出,最先插入的元素最先被刪除。 在jQuery內部,隊列模塊為動畫模塊提供基礎功能,負責存儲動畫函數、自動出隊並執行動畫函數,同時還要確保動畫函數的順序執行。 jQuery的靜 ...
  • 為了獲得更好的閱讀體驗,請訪問原地址: "傳送門" 一、React 簡介 React 是什麼 React 是一個起源於 Facebook 的內部項目,因為當時 Facebook 對於市場上所有的 JavaScript MVC 框架都不太滿意,所以索性就自己寫了一套,用來架設 Instagram。做出 ...
  • 上一節我們介紹了vue搭建環境的情況,並使用一種方式搭建了一個項目,在這裡為大家推薦另一種創建項目的方式。 vue init webpack-simple vuedemo02 cd vuedemo02 cnpm install / npm install npm run dev 最後在瀏覽器輸入:l ...
  • JavaScript概述 ECMAScript和JavaScript的關係 1996年11月,JavaScript的創造者 Netscape公司,決定將JavaScript提交給國際標準化組織ECMA,希望這門語言能夠成為國際標準。次年,ECMA發佈262號標準文件(ECMA 262)的第一版,規定 ...
一周排行
    -Advertisement-
    Play Games
  • JWT(JSON Web Token)是一種用於在網路應用之間傳遞信息的開放標準(RFC 7519)。它使用 JSON 對象在安全可靠的方式下傳遞信息,通常用於身份驗證和信息交換。 在Web API中,JWT通常用於對用戶進行身份驗證和授權。當用戶登錄成功後,伺服器會生成一個Token並返回給客戶端 ...
  • 老周在幾個世紀前曾寫過樹莓派相關的 iOT 水文,之所以沒寫 Nano Framework 相關的內容,是因為那時候這貨還不成熟,可玩性不高。不過,這貨現在已經相對完善,老周都把它用在項目上了——第一個是自製的智能插座,這個某寶上50多塊可以買到,搜“esp32 插座”就能找到。一種是 86 型盒子 ...
  • 引言 上一篇我們創建了一個Sample.Api項目和Sample.Repository,並且帶大家熟悉了一下Moq的概念,這一章我們來實戰一下在xUnit項目使用依賴註入。 Xunit.DependencyInjection Xunit.DependencyInjection 是一個用於 xUnit ...
  • 在 Avalonia 中,樣式是定義控制項外觀的一種方式,而控制項主題則是一組樣式和資源,用於定義應用程式的整體外觀和感覺。本文將深入探討這些概念,並提供示例代碼以幫助您更好地理解它們。 樣式是什麼? 樣式是一組屬性,用於定義控制項的外觀。它們可以包括背景色、邊框、字體樣式等。在 Avalonia 中,樣 ...
  • 在處理大型Excel工作簿時,有時候我們需要在工作表中凍結窗格,這樣可以在滾動查看數據的同時保持某些行或列固定不動。凍結窗格可以幫助我們更容易地導航和理解複雜的數據集。相反,當你不需要凍結窗格時,你可能需要解凍它們以獲得完整的視野。 下麵將介紹如何使用免費.NET庫通過C#實現凍結Excel視窗以鎖 ...
  • .NET 部署 IIS 的簡單步驟一: 下載 dotnet-hosting-x.y.z-win.exe ,下載地址:.NET Downloads (Linux, macOS, and Windows) (microsoft.com) .NET 部署 IIS 的簡單步驟二: 選擇對應的版本,點擊進入詳 ...
  • 拓展閱讀 資料庫設計工具-08-概覽 資料庫設計工具-08-powerdesigner 資料庫設計工具-09-mysql workbench 資料庫設計工具-10-dbdesign 資料庫設計工具-11-dbeaver 資料庫設計工具-12-pgmodeler 資料庫設計工具-13-erdplus ...
  • 初識STL STL,(Standard Template Library),即"標準模板庫",由惠普實驗室開發,STL中提供了非常多對信息學奧賽很有用的東西。 vector vetor是STL中的一個容器,可以看作一個不定長的數組,其基本形式為: vector<數據類型> 名字; 如: vector ...
  • 前言 最近自己做了個 Falsk 小項目,在部署上伺服器的時候,發現雖然不乏相關教程,但大多都是將自己項目代碼複製出來,不講核心邏輯,不太簡潔,於是將自己部署的經驗寫成內容分享出來。 uWSGI 簡介 uWSGI: 一種實現了多種協議(包括 uwsgi、http)並能提供伺服器搭建功能的 Pytho ...
  • 1 文本Embedding 將整個文本轉化為實數向量的技術。 Embedding優點是可將離散的詞語或句子轉化為連續的向量,就可用數學方法來處理詞語或句子,捕捉到文本的語義信息,文本和文本的關係信息。 ◉ 優質的Embedding通常會讓語義相似的文本在空間中彼此接近 ◉ 優質的Embedding相 ...