改變函式中this的三種方法

2021-10-03 09:36:32 字數 633 閱讀 4675

1.this:this是js的關鍵字,存在於函式內部,隨著函式的呼叫,函式內部的this指向會發生變化,有乙個總的指向原則–誰呼叫函式this指向誰。

function

sum(a, b)

sum(3,

5);//window 8

sum.

call

('hello',3

,6);

//hello,9

var obj =

function

sum(a, b, c)

sum.

(obj,[5

,7,9

]);//改變this指向,this指向obj

2.3.bind

格式:函式物件.bind(參1,參2…);

參1:新的this指向

參2:從參2開始,後面的引數代表函式自身的引數。

var obj =

function

sum(a, b, c)

sum.

bind

(obj,5,

7,9)

();//返回的是函式體,可以通過再次呼叫看到結果

改變this指向的三種方法

function box a,b 方法一 bind 不會自動呼叫函式 let obj box box.bind obj,1,2 box this 方法二 call 函式 第乙個引數 是乙個物件 用這個改變函式內部的this,並且呼叫這個函式 其他的引數 都會作為box函式的引數 box.call 1...

CSS 改變 li 樣式的三種方法

無標題文件title div div ulli div1 div1 ulli div2 div2 ulli style head 第一種背景方式新增center class div 網路工程學院2014級學生參觀考察河南省電子商.06 30li 網路工程學院舉行2016年本科人才培養方案第四.06 ...

ES5中改變this指向的三種方法

es5中提供了三種改變函式中this指標指向的方法,分別如下 var obj 沒有任何修飾的呼叫函式,函式中的this指向全域性物件,此處為window function foo para1,para2 利用call 改變foo函式中this的指向,讓它指向obj foo.call obj,傳遞的第...