ES6学习-类(Class)的声明1

在es5中,是不存在类的概念的,但在ES6中,为我们提供了类的使用。

1.类的声明

先声明一个最简单的coder类,类里只有一个name方法,方法中打印出传递的参数。

class coder{
    name(val){
        console.log(val);
    }
}

2.类的使用

我们已经声明了一个类,并在类里声明了name方法,现在要实例化类,并使用类中的方法。

class Coder{
    name(val){
        console.log(val);
    }
}

let test= new Coder;
test.name('js');  //js

3.类的多方法声明

class Coder{
    name(val){
        console.log(val);
        return val;
    }
    skill(val){
        console.log(this.name('js1')+'-'+'Skill:'+val);
    }
}
 
let test= new Coder;
test.name('js');
test.skill('es6'); 

//js
//js1
//js1-skill:es6

这里需要注意的是方法中间不能写逗号了,否则会报错。还有这里的this指类本身。

4.类的传参

在类的参数传递中我们用constructor( )进行传参。具体constructor是什么可以看下节。传递参数后可以直接使用this.xxx进行调用。

class Coder{
    name(val){
        console.log(val);
        return val;
    }
    skill(val){
        console.log(this.name('jspang')+':'+'Skill:'+val);
    }
 
    constructor(a,b){
        this.a=a;
        this.b=b;
    }
 
    add(){
        return this.a+this.b;
    }
}
 
let test=new Coder(1,2);
console.log(test.add());  //3

5.类的继承

class Coder{
    name(val){
        console.log(val);
        return val;
    }
}
 
class inherit extends Coder{  
 
}
 
let test=new inherit;
test.name('js');  //js

声明一个inherit的新类并继承Coder类,inherit新类里边为空,这时候我们实例化新类,并调用里边的name方法。结果也是可以调用到的。

下一篇-ES6学习-类(Class)的原理2

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