类的基本语法

1.生产一个类,并在类里面定义一个方法
class Person{
        constructor(name,age){
            this.name=name;
            this.age=age;
        }
        say(){
            console.log(this.name+this.age)
        }
 }
//ES6 的类,完全可以看作构造函数的另一种写法。
typeof Person; //function

a.构造函数的prototype属性,在 ES6 的“类”上面继续存在。事实上,类的所有方法都定义在类的prototype属性上面。

class Person {
  constructor() {
    // ...
  }

  say() {
    // ...
  }

  toValue() {
    // ...
  }
}

// 等同于

Person.prototype = {
  constructor() {},
  say() {},
};

b.在类的实例上面调用方法,其实就是调用原型上的方法。

 class Person{
        
 }
 let p = new Person();
 console.log(p.constructor==Person.prototype.constructor); //true

2.类的方法定义在原型上,如何一次向原型添加很多方法Object.assign()

class Person{

}
Object.assign(Person.prototype,{
        say(){
            console.log("say")
        },
        listen(){
            console.log("listen")
        }
});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • class的基本用法 概述 JavaScript语言的传统方法是通过构造函数,定义并生成新对象。下面是一个例子: ...
    呼呼哥阅读 4,138评论 3 11
  • 官方中文版原文链接 感谢社区中各位的大力支持,译者再次奉上一点点福利:阿里云产品券,享受所有官网优惠,并抽取幸运大...
    HetfieldJoe阅读 3,028评论 4 14
  • 特别说明,为便于查阅,文章转自https://github.com/getify/You-Dont-Know-JS...
    杀破狼real阅读 1,177评论 0 4
  • 平凡的人生我活了13年,今年快到第14年了。 今年我初三,然而同樣是平凡的人生。 我已經對這種生活沒什麼感覺了。 ...
    _夏沫_阅读 266评论 0 3
  • 身边是烈火熊熊燃烧,温度灼得似乎连盔甲都能融化,燕灼小小的身影在被大火席卷的战场上,好像很快就可以化为灰烬。她努力...
    玄芨阅读 289评论 0 0