函數(shù)四種調用模式以及其中的this指向

第一種:函數(shù)直接執(zhí)行模式

創(chuàng)新互聯(lián)建站網站建設公司是一家服務多年做網站建設策劃設計制作的公司,為廣大用戶提供了成都網站建設、做網站,成都網站設計,廣告投放,成都做網站選創(chuàng)新互聯(lián)建站,貼合企業(yè)需求,高性價比,滿足客戶不同層次的需求一站式服務歡迎致電。

function add(a,b){
   console.log(this);
   return a+b;
  }
 add(10,20)//this===window

第二種:對象方法的調用模式

var obj={
   name:'aaa',
   age:20,
   said:function(){
    console.log(this);
   }
  }
obj.said();//this===obj,此處this指代被調用者

第三種:構造器的調用模式

function School(){
   this.said=function(){
    console.log(this);
   }
  }
var nanj=new School();
nanj.said();//對象調用自己的方法,this===nanj,類似上面

第四種:call和apply調用模式

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);

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持創(chuàng)新互聯(lián)!

分享名稱:函數(shù)四種調用模式以及其中的this指向
網站地址:http://muchs.cn/article30/ipjoso.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站建設域名注冊、微信小程序、標簽優(yōu)化自適應網站、定制開發(fā)

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)