函數(shù)四種調(diào)用模式以及其中的this指向
更新時間:2017年01月16日 16:18:30 作者:九成
本文主要介紹了函數(shù)四種調(diào)用模式以及其中的this指向的相關(guān)知識,具有一定的參考價值,下面跟著小編一起來看下吧
第一種:函數(shù)直接執(zhí)行模式
function add(a,b){
console.log(this);
return a+b;
}
add(10,20)//this===window
第二種:對象方法的調(diào)用模式
var obj={
name:'aaa',
age:20,
said:function(){
console.log(this);
}
}
obj.said();//this===obj,此處this指代被調(diào)用者
第三種:構(gòu)造器的調(diào)用模式
function School(){
this.said=function(){
console.log(this);
}
}
var nanj=new School();
nanj.said();//對象調(diào)用自己的方法,this===nanj,類似上面
第四種:call和apply調(diào)用模式
function change(a,b){
this.detial=a*b;
console.log(this);
}
var p={};
change.call(p,4,5);//此處的this===p
console.log(p.detial);
var q=[];
change.call(q,5,10)//this===q
console.log(q.detial);
//apply和call一樣的用法,只不過apply第二個參數(shù)用數(shù)組進行傳遞
var arr=[];
change.apply(arr,[10,10]);//this===arr
console.log(arr.detial);
var str={};
change.apply(str,[20,20]);//this===str
console.log(str.detial);
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
webpack-dev-server搭建本地服務(wù)器的實現(xiàn)
當我們使用webpack打包時,發(fā)現(xiàn)每次更新了一點代碼,都需要重新打包,我們希望本地能搭建一個服務(wù)器,本文就介紹如何使用webpack-dev-server搭建本地服務(wù)器,感興趣的可以了解一下2021-07-07
javascript 3d 逐偵產(chǎn)品展示(核心精簡)
這篇文章主要介紹了javascript實現(xiàn)的3d逐偵產(chǎn)品展示,需要的朋友可以參考下2014-03-03
JavaScript實現(xiàn)計算多邊形質(zhì)心的方法示例
這篇文章主要介紹了JavaScript實現(xiàn)計算多邊形質(zhì)心的方法,結(jié)合實例形式分析了javascript針對多邊形質(zhì)心數(shù)學計算的相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
javascript+jQuery實現(xiàn)360開機時間顯示效果
這篇文章主要介紹了javascript+jQuery實現(xiàn)360開機時間顯示效果,在文中給大家提到了js實現(xiàn)時間倒計時的代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-11-11
一直都需要的復(fù)制到系統(tǒng)剪貼板之IE,firefox兼容版
一直都需要的復(fù)制到系統(tǒng)剪貼板之IE,firefox兼容版...2007-09-09

