首先根据es5的类(原型对象)的基本点做参照。

序号 基本点 es5 >es6
1 实例属性(方法)
2 原型属性(方法) 或 公共属性(方法)
3 es5的私有变量 或 私有属性
4 静态方法和静态属性
5 set 和 get
6 protected
6 继承

ps: 私有属性和私有变量并非相等,私有属性可在类与类之间直接传递,Es6现在没有或再提议。

// es5的私有变量间接通过实例方法传递和修改
function Person() {
var privateVariable = '私有变量';
this.getPrivateVarivable = function () {
return privateVariable;
}
this.setPrivateVarivable = function (val) {
privateVariable = val;
}
}

概过:Es6 没有protected,私有属性private没有,只有5点:

  1. 实例属性
  2. 公共
  3. 静态
  4. set 和 get
  5. 继承
class Parent  {
constructor(name='baba'){
// 实例属性
this.name=name;
// 实例方法
this.fn = () => {
// todo
}
// 初始化执行某方法
this.someMethod();
}
// 公共方法
someMethod () {
// todo
}
// 静态方法
static function () {
// todo
}
get longName () {
return `lc_${this.name}`;
}
set longName (val) {
this.name = val;
}
}
// 公共属性
Parent.prototype.type = 'super';
// 静态属性
Parent.name = 'fn parent'; const parent = new Parent();
parent.longName; // lc_baba
parent.longName = '666';
parent.longName; // 'lc_666' class Child extends Parent {
constructor(...args) {
// super()一定要有,并在construtor内第一行的位置
super(...args);
// 执行父类某方法时,不同事执行子类继承过来的方法
// super.someMethod();
this.someMethod();
}
some () {
// todo
}
}

Es6 的类(class)的更多相关文章

  1. React和ES6(二)ES6的类和ES7的property initializer

    React与ES6系列: React与ES6(一)开篇介绍 React和ES6(二)ES6的类和ES7的property initializer React与ES6(三)ES6类和方法绑定 React ...

  2. [js高手之路] es6系列教程 - new.target属性与es5改造es6的类语法

    es5的构造函数前面如果不用new调用,this指向window,对象的属性就得不到值了,所以以前我们都要在构造函数中通过判断this是否使用了new关键字来确保普通的函数调用方式都能让对象复制到属性 ...

  3. ES6入门——类的概念

    1.Class的基本用法 概述 JavaScript语言的传统方式是通过构造函数,定义并生成新对象.这种写法和传统的面向对象语言差异很大,下面是一个例子: function Point(x, y) { ...

  4. JavaScript es6 class类的理解。

    本着互联网的分享精神,在本篇文章我将会把我对JavaScript  es6 class类的理解分享给大家. JavaScript 类主要是 JavaScript 现有的基于原型的继承的语法糖. 类语法 ...

  5. ES6 | class类的基本语法总结

    类和模块的内部,默认就是严格模式,所以不需要使用use strict指定运行模式.只要你的代码写在类或模块之中,就只有严格模式可用. 考虑到未来所有的代码,其实都是运行在模块之中,所以 ES6 实际上 ...

  6. es6 --- class 类的继承使用

    传统的javascript中只有对象,没有类的概念.它是基于原型的面向对象语言.原型对象特点就是将自身的属性共享给新对象.这样的写法相对于其它传统面向对象语言来讲,很有一种独树一帜的感脚!非常容易让人 ...

  7. ES6 class类中定义私有变量

    ES6 class类中定义私有变量 class类的不足 看起来, es6 中 class 的出现拉近了 JS 和传统 OOP 语言的距离.但是,它仅仅是一个语法糖罢了,不能实现传统 OOP 语言一样的 ...

  8. es6 的类 class

    1.ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板.通过class关键字,可以定义类. 2. //定义类 class Point { constructor(x, y ...

  9. ES6——class类继承(读书笔记)

    前言 我一定是一个傻子,昨天这篇文章其实我已经写好了一半了,但是我没有保存 这是学习ES6的过程,我没有系统的看完阮大大的书.零零散散的,很多功能知道,但是没有实际的用过 看了几遍,总是看前面几章,所 ...

  10. ES6 class 类的理解(一)

    优点 ES6 的类提供了几点明显的好处: 兼容当前大量的代码. 相对于构造器和构造器继承,类使初学者更容易入门. 子类化在语言层面支持. 可以子类化内置的构造器. 不再需要继承库:框架之间的代码变得更 ...

随机推荐

  1. IP分片与重组详解

    大家对IP数据包头,应该不陌生吧 分片便是与图中圈出来的两个地址有关,本文也是将主要围绕他们展开. 那我们先来了解他们的概念. 标志一个三比特字段遵循与用于控制或识别片段.他们是(按顺序,从高分以低位 ...

  2. Android 使用ColorMatrix改变图片颜色

    原文链接:http://blog.csdn.net/janice0529/article/details/49207939 ColorMatrix的颜色矩阵介绍 颜色矩阵M是一个5*4的矩阵,在And ...

  3. 可能是最早的学习Android N新特性的文章

    可能是最早的学习Android N新特性的文章 Google在今天放出了Android N开发者预览版.Android N支持Nexus6及以上的设备.5太子Nexus5不再得到更新. Android ...

  4. 解决VisualStudio无法调试的问题

    方法1 方法2

  5. Flv的结构分析

    Flv是网络上流行的非常广的一种媒体格式,很多大型媒体网站都在使用这种格式承载音视频信息,比如优酷等网站. Flv文件格式相对而言还是比较简单的,主要是由两部分组成 FLV header FLV bo ...

  6. Apache Maven 打包可执行jar

    在本文的 参考资料 部分,您将发现大量介绍 Maven 的入门教程.本文的 5 个技巧目的是帮助您解决即将出现的一些问题:使用 Maven 管理您的应用程序的生命周期时,将会出现的编程场景. 1. 可 ...

  7. 安卓手机优化 ROOT自启动管理 + 电量管理

    一.KingRoot + 净化大师 KingRoot 主要完成ROOT 和 自启动软件的管理 这里禁止的自启动管理 对于有些软件是不太管用 比如美团 手机百度等 净化大师 主要完成 高电量的软件优化 ...

  8. QT textBrowser 使用

    使用环境: VS2010 & QT Designer5 1. 在QT Designer 拖入  textBrowser,点击右键属性获得 name值 2. 在程序使用的地方 加入  ui.te ...

  9. day_10 py 字典

    #!/usr/bin/env/python#-*-coding:utf-8-*-'''字典: (就是增加个索引名字,然后归类了一下) infor = {键:值,键:值} 列表存储相同的信息随着列表里面 ...

  10. 录制用户的音频,视屏 navigator.mediaDevices.getUserMedia

    google 文档 HACKS 文档 相关代码 获取本地的音频 <input type="file" accept="audio/*" capture=& ...