国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JS之理解ES6聲明類class原理

daryl / 2774人閱讀

摘要:原理通過(guò)構(gòu)造函數(shù)聲明類通過(guò)的聲明類原理首先得了解原型鏈的基礎(chǔ)知識(shí)分析是一個(gè)類,也是一個(gè)函數(shù)是一個(gè)對(duì)象指向的是函數(shù),該函數(shù)還掛了和屬性將函數(shù)掛載的原型上。

ES6 class原理

1.通過(guò)構(gòu)造函數(shù)聲明類

function People(name,age){
 this.name = name;
 this.age = age; 
}

People.prototype.say=function(){
    console.log("hello)}
    
People.see=function(){
    alert("how are you")}    

2.通過(guò)es6class聲明類

class People{
  constructor(name,age){
     this.name = name;
     this.age = age}
     
  static see(){alert("how are you")}  }
  
  say(){console.log("hello");}}

3.es6 class原理

首先得了解原型鏈的基礎(chǔ)知識(shí)https://segmentfault.com/a/11...;

分析:①People是一個(gè)類,也是一個(gè)函數(shù);②constructor是一個(gè)對(duì)象指向的是People函數(shù),該函數(shù)還掛了nameage屬性;③將say函數(shù)掛載People的原型上。

代碼

let People = function(){ //第①步,創(chuàng)建People函數(shù)
 
 function People(name,age){//第②步,理解constructor就是指向People,People掛載著name和age兩個(gè)屬性
    this.name = name;
    this.age = age;}
   
 //將靜態(tài)和動(dòng)態(tài)的方法分別掛載在People的原型和People上。   
 creatClass(People,[{key:"say",value:function(){
     console.log(123)}}],[{key:"see",value:function(){
     alert("how are you")}}])  
     
 return People;}
 
//這里的Constructor就是指的People  
let creatClass = function({
  return function(Constructor,,protoProps,staticProps){
     //有原型上的方法掛載People.prototype上
     if(protoProps){defineProperties(Constructor.prototype,protoProps)}
      //有People對(duì)象上的方法掛載People上
     if(staticProps){defineProperties(Constructor,staticProps)}}
 
//定義對(duì)象屬性     
let defineProperties =function(target, props) {
     for (var i = 0; i < props.length; i++) {
       var descriptor = props[i];
       Object.defineProperty(target, descriptor.key, descriptor);
     }
   }   
})  
 
 

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/84335.html

相關(guān)文章

  • JS理解ES6 繼承extends

    摘要:理解繼承在中對(duì)繼承有了更友好的方式。總的來(lái)說(shuō)的的實(shí)質(zhì)和以前的繼承方式是一致的,但是有了更好的,更清晰的表現(xiàn)形式。 理解ES6繼承extends 1.在es6中對(duì)繼承有了更友好的方式。在下面的繼承中那到底在extends的時(shí)候做了什么,super()又是代表什么意思。 class People{ constructor(name, age) { this.name = name; ...

    starsfun 評(píng)論0 收藏0
  • ES6深入淺出 Classes

    摘要:一步,一步前進(jìn)一步深入淺出之。是構(gòu)造函數(shù),可在里面初始化我們想初始化的東西。類靜態(tài)方法大多數(shù)情況下,類是有靜態(tài)方法的。中添加類方法十分容易類方法和靜態(tài)方法是同一個(gè)東西在的語(yǔ)法中,我們可以使用關(guān)鍵字修飾方法,進(jìn)而得到靜態(tài)方法。 一步,一步前進(jìn)の一步 ES6深入淺出之Classes。翻譯的同時(shí)亂加個(gè)人見解,強(qiáng)烈推薦閱讀原作者的文章,言簡(jiǎn)意賅。es6-classes-in-depth 類語(yǔ)...

    array_huang 評(píng)論0 收藏0
  • ES6-7

    摘要:的翻譯文檔由的維護(hù)很多人說(shuō),阮老師已經(jīng)有一本關(guān)于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發(fā)過(guò)程中,顯得越來(lái)越重要。為了讓編程更美好,我們就需要引入來(lái)降低異步編程的復(fù)雜性。 JavaScript Promise 迷你書(中文版) 超詳細(xì)介紹promise的gitbook,看完再不會(huì)promise...... 本書的目的是以目前還在制定中的ECMASc...

    mudiyouyou 評(píng)論0 收藏0
  • 校招社招必備核心前端面試問(wèn)題與詳細(xì)解答

    摘要:本文總結(jié)了前端老司機(jī)經(jīng)常問(wèn)題的一些問(wèn)題并結(jié)合個(gè)人總結(jié)給出了比較詳盡的答案。網(wǎng)易阿里騰訊校招社招必備知識(shí)點(diǎn)。此外還有網(wǎng)絡(luò)線程,定時(shí)器任務(wù)線程,文件系統(tǒng)處理線程等等。線程核心是引擎。主線程和工作線程之間的通知機(jī)制叫做事件循環(huán)。 showImg(https://segmentfault.com/img/bVbu4aB?w=300&h=208); 本文總結(jié)了前端老司機(jī)經(jīng)常問(wèn)題的一些問(wèn)題并結(jié)合個(gè)...

    DevTalking 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<