zoukankan      html  css  js  c++  java
  • ES6 第十七节 class类的使用

    ES6 第十七节 class类的使用


    第十七节 class类的使用

    我们在ES5中经常使用方法或者对象去模拟类的使用,虽然可以实现功能,但是代码并不优雅.ES6为我们提供了类的使用。需要注意的是我们在写类的时候和ES5中的对象和构造函数要区分开.

    类的声明

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

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

    类的使用

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

    class Coder{
        name(val){
            console.log(val);
        }
    }
    
    let da0sy = new Coder;
    da0sy.name('da0sy');
    

    类的多方法声明

    class Coder{
        name(val){
            console.log(val);
            return val;
        }
        skill(val){
            console.log(this.name('da0sy')+':'+'Skill:'+val);
        }
    }
    
    let da0sy = new Coder;
    da0sy.name('da0sy');
    da0sy.skill('web');
    

    需要注意的是两个方法中间不要写逗号了,这里的this指类本身,要注意return 的用法。

    类的传参

    在类的参数传递中我们用constructor( )进行传参。传递参数后可以直接使用this.xxx进行调用。

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

    我们用constructor来约定了传递参数,然后用了一个add方法,把参数相加。这和以前我们的传递方法有些不一样.

    class的继承

    类的一大特点就是继承,ES6中也有继承,在这里我们简单的看看继承的用法。

    class htmler extends Coder{
    
    }
    
    let xi = new htmler;
    xi.name('黛西');
    

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

  • 相关阅读:
    关联规则算法---Eclat算法
    Apriori算法第二篇----详细分析和代码实现
    scrapy框架初识
    git入门
    phantomjs的和谷歌浏览器的简单使用
    selenium模块的而简单使用
    代理ip的使用以及多进程爬取
    爬虫之re块解析
    爬虫初识和request使用
    xpath的基础使用
  • 原文地址:https://www.cnblogs.com/Elva3zora/p/12557628.html
Copyright © 2011-2022 走看看