首先根据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
}
}

最新文章

  1. C# Linq排序
  2. sql server如何分组编号
  3. 备份触发器:ADDC3
  4. 怎么修改git提交过的内容
  5. Vue.2.0.5-事件处理器
  6. Spring入门(3)-Spring命名空间与Bean作用域
  7. Cloud Insight 现在已经支持监控 Cassandra 啦!
  8. Android倒计时Button
  9. input输入框校验,字母,汉字,数字等
  10. HBase表重命名
  11. js 实现控制点击事件在特定的毫秒内 只允许点击一次(防止重复点击)
  12. 【转】Oracle系列导航目录
  13. Django 请求类型
  14. Python Flask学习笔记之模板
  15. 软工实践——结对作业2【wordCount进阶需求】
  16. HDU 4849 - Wow! Such City!
  17. Hive中自定义Map/Reduce示例 In Java
  18. jdbc第二天
  19. 线上服务内存OOM问题定位
  20. UVa 1585 - Score - ACM/ICPC Seoul 2005 解题报告 - C语言

热门文章

  1. AD域部署使用bginfo软件
  2. SpringBoot整合Mail
  3. 缓存技术PK:选择Memcached还是Redis?
  4. Linux-C实现GPRS模块发送短信
  5. Linux设备驱动剖析之IIC(三)
  6. 【python】并查集
  7. 理解xwindows
  8. Phoenix系列:原子的Upsert
  9. MFC接收命令行参数的三种方法
  10. 录制用户的音频,视屏 navigator.mediaDevices.getUserMedia