call,apply,bind使用區別

2022-05-07 12:57:09 字數 976 閱讀 1370

doctype html

>

<

html

lang

="en"

>

<

head

>

<

meta

charset

="utf-8"

>

<

meta

name

="viewport"

content

="width=device-width, initial-scale=1.0"

>

<

title

>document

title

>

head

>

<

body

>

<

script

>

varm ='

我是全域性的m

'function

fn (a,b)

varobj

=

//函式物件:將乙個函式作為物件使用

//例項物件:new函式呼叫產生的物件簡稱為物件

fn(2,3

,4) //

2 3 "我是全域性的m"

fn.call(obj,2,

3,4)

//2 3 "我是obj的m"2,

3,4])

//2 3 "我是obj的m"

//bind返回乙個新的函式

fn.bind(obj,5)(

2,3,

4) //5 2 "我是obj的m"

fn.bind(obj,5,

6)(2,

3,4)

//5 6 "我是obj的m"

script

>

body

>

html

>

call apply bind的使用和實現

作用 修改函式this為目標物件 說明 與bind的區別 bind是返回別修改過this的函式,而call是修改this,並直接呼叫 code var name window var obj function showname age,gender 直接呼叫 this window showname...

call apply bind的使用方法和區別

call 1.改變this指向 2.執行函式 3.傳參 var obj function fun a,b fun 1,2 1,2,window fun.call obj,3,4 3,4,obj 1.改變this指向,執行函式,傳參 引數必須是陣列的形式 var obj function fun a,...

call, apply, bind方法詳解

function a x,y var c a.call c,5,6 5 6 arguments 5,6 再看例子 function person age,male var person1 person.call person1,20,female person1 var person var per...