zoukankan      html  css  js  c++  java
  • ES6面向对象学习笔记

    在ES6之前,js虽然也有面向对象的方法,但实现起来都特别繁琐,ES6借鉴了java面向对象方法的优点,成功简化了面向对象的方法,下面是我学到的ES6面向对象中继承的一个例子:

    ES5写法

            // ES5实现面向对象继承
            function User(name,age){
            	this.name=name;
            	this.age=age;
            }
            User.prototype.showAge=function(){
            	alert(this.age);
            }
            User.prototype.showName=function(){
            	alert(this.name);
            }
            function VipUser(name,age,level){
            	User.call(this,name,age);
            	this.level=level;
            }
            VipUser.prototype=new User();
            VipUser.prototype.constructor=VipUser;
            VipUser.prototype.showLevel=function(){
            	alert(this.level);
            }
            let a = new VipUser('小明',18,18);
            a.showName();
            a.showAge();
            a.showLevel();
    

    ES6写法

            //ES6实现面向对象继承
            class User{
            	constructor(name,age){
            		this.name=name;
            		this.age=age;
            	}
            	showName(){
            		alert(this.name);
            	}
            	showAge(){
            		alert(this.age);
            	}
            }
            class VipUser extends User{
            	constructor(name,age,level){
            		super(name,age);
            		this.level=level;
            	}
            	showLevel(){
            		alert(this.level);
            	}
            }
            let a = new VipUser('刘峰',21,21);
            a.showName();
            a.showAge();
            a.showLevel();
    
    

    由此对比就会明白ES6写法更接近面向对象的语言,也更能让人理解。

  • 相关阅读:
    pycharm使用技巧
    for 循环
    面向对象进阶
    python实现socket上传下载文件-进度条显示
    python实现进度条--主要用在上传下载文件
    django下常用查询的API
    django下model.py模型的定义
    django下数据库配置
    ORM机制简介
    views.py文件详解
  • 原文地址:https://www.cnblogs.com/lfnumber7/p/12577905.html
Copyright © 2011-2022 走看看