中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS apply用法總結和使用場景實例分析

發布時間:2020-09-16 05:11:42 來源:腳本之家 閱讀:170 作者:qdmoment 欄目:web開發

本文實例講述了JS apply用法總結和使用場景。分享給大家供大家參考,具體如下:

apply是綁定this到指定函數或類,也可以說把函數或者類的方法和屬性給到當前作用域。

1,使用apply實現繼承

  function A(name, age){
   this.name = name;
   this.age = age;
  }
 
  function B(name, age, time){
   A.apply(this,[name]) //這里的name必須加上[]
  }
 
  const b = new B('繼承');
  console.log(b)

2,使用apply實現多重繼承

function Class10(){
 this.showSub = function(a,b){
    alert(a - b);
  }  
}
 
function Class11(){
 this.showAdd = function(a,b){
    alert(a + b);
  } 
}
 
function Class12(){
 Class10.apply(this);
 Class11.apply(this);  
 // Class10.call(this);
 //Class11.call(this); 
}
 
var c2 = new Class12();
c2.showSub(3,1);  //2
c2.showAdd(3,1);  //4

3,apply使用時傳參規則

fn.apply(this,array)

在執行過程中,array參數會被轉化成一個一個參數傳遞給函數fn

fn.apply(this,[params1,params2,...])
//相當于
fn(params1,params2,...)//這里的this指向執行fn函數的作用域

4,apply綁定this和綁定null

  function C(name, age){
   console.log(this.name)
  }
 
  var name = 'windowname'
  var myObject = {name:"myA",age:"myB"};
  C.apply(myObject) //myA
  C.apply(null)//windowname
 
   function D(){
   this.name = '我是D空間'
   C.apply(this)
  }
 
  D();//我是D空間

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》

希望本文所述對大家JavaScript程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

杭锦旗| 普兰店市| 若羌县| 大安市| 望奎县| 东阿县| 高唐县| 乌兰浩特市| 永修县| 深州市| 南充市| 宁国市| 平顺县| 崇阳县| 黔东| 龙南县| 新竹市| 麻城市| 碌曲县| 公主岭市| 永顺县| 柯坪县| 灵丘县| 朝阳县| 微山县| 忻城县| 平塘县| 遂宁市| 特克斯县| 武安市| 北京市| 微博| 府谷县| 长寿区| 神农架林区| 蚌埠市| 高雄县| 皋兰县| 大悟县| 奎屯市| 黄浦区|