深入理解call applay和bind

2021-09-20 13:19:41 字數 687 閱讀 9569

這三個方法都是用來改變某乙個函式this關鍵字指向的

function.prototype.

call

=function

(a,20,30

)function

fn1(

)function

fn2(

)fn1.

call

(fn2)

;fn1.call.

call

(fn2)

;function.prototype.

call

(fn1)

;function.prototype.call.

call

(fn1)

;fn1.call.call.call.

call

(fn2)

;//2

call中的細節:

1.非嚴格模式下,如果引數不傳,或者第乙個傳遞的是null/undefined,this是window

2.嚴格模式下:不傳,this是undefined

bind:語法和call一模一樣,唯一的區別在於立即執行還是等待執行

fn.call(obj, 10, 20) 改變fn中的this,並且把fn立即執行

fn.bind(obj, 10, 20)改變fn中的this,並且此時讀fn並沒有執行

深入理解C語言 深入理解指標

關於指標,其是c語言的重點,c語言學的好壞,其實就是指標學的好壞。其實指標並不複雜,學習指標,要正確的理解指標。指標也是一種變數,占有記憶體空間,用來儲存記憶體位址 指標就是告訴編譯器,開闢4個位元組的儲存空間 32位系統 無論是幾級指標都是一樣的 p操作記憶體 在指標宣告時,號表示所宣告的變數為指...

mysql 索引深入理解 深入理解MySql的索引

為什麼索引能提高查詢速度 先從 mysql的基本儲存結構說起 mysql的基本儲存結構是頁 記錄都存在頁裡邊 各個資料頁可以組成乙個雙向鍊錶每個資料頁中的記錄又可以組成乙個單向鍊錶 每個資料頁都會為儲存在它裡邊兒的記錄生成乙個頁目錄,在通過主鍵查詢某條記錄的時候可以在頁目錄中使用二分法快速定位到對應...

深入理解C語言 深入理解指標

關於指標,其是c語言的重點,c語言學的好壞,其實就是指標學的好壞。其實指標並不複雜,學習指標,要正確的理解指標。指標也是一種變數,占有記憶體空間,用來儲存記憶體位址 指標就是告訴編譯器,開闢4個位元組的儲存空間 32位系統 無論是幾級指標都是一樣的 p操作記憶體 在指標宣告時,號表示所宣告的變數為指...