JS的ES6的class

1.类的创建:

  • 定义类

  • 类的构造函数

  • 类的静态方法

  • 类的一般属性和方法

 1 //定义类
 2 class Person{
 3 
 4   // 类的静态方法,相当于Person.test = function(){console.log("类的静态方法");}
 5   static test() {
 6     console.log("类的静态方法");
 7     
 8   }
 9 
10   //constructor构造函数
11   constructor(name,age){
12 
13     console.log("调用构造函数");
14     this.name = name;
15     this.age = age;
16   }
17 
18   //类的一般方法,定义在实例对象的原型对象上,相当于Person.prototype.show = function(){console.log("this.name,this.age");}
19   show(){
20     console.log(this.name,this.age);
21     
22   }
23 }
24 
25 let person1 = new Person("wzh",25);
26 console.log(person1);
27 
28 person1.show();
29 Person.test();

2.继承

  • super

  • extends

 1 //定义类
 2 class Person{
 3 
 4   // 类的静态方法,相当于Person.test = function(){console.log("类的静态方法");}
 5   static test() {
 6     console.log("类的静态方法");
 7     
 8   }
 9 
10   //constructor构造函数
11   constructor(name,age){
12 
13     console.log("调用构造函数");
14     this.name = name;
15     this.age = age;
16   }
17 
18   //类的一般方法,定义在实例对象的原型对象上,相当于Person.prototype.show = function(){console.log("this.name,this.age");}
19   show(){
20     console.log(this.name,this.age);
21     
22   }
23 }
24 
25 let person1 = new Person("wzh",25);
26 console.log(person1);
27 
28 class Child extends Person{
29 
30   constructor(name,age,sex){
31     super(name,age);  //调用父类构造函数构造子类
32     this.sex = sex;
33   }
34 
35   //重写父类同名函数
36   show(){
37     console.log(this.name,this.age,this.sex);
38     
39   }
40 
41 }
42 
43 let child = new Child("wzl",24,"男");
44 child.show();

 

posted @ 2019-12-19 20:58  All_just_for_fun  阅读(1273)  评论(0编辑  收藏  举报