ES6

使用类与传统函数的区别

如果声明为一个类 在变量赋值的时候 该变量没有this this没有发生自动包装 所以在直接调用speak 和 eat的时候回出现返回undefined这种情况(无论是严格模式 还是 非严格模式)

但是 当我们基于函数类传统的这种方法来写代码 那么基于该函数this指针会自动装箱 就可以被调用到



与原来的原型链继承不一样 子类Dog可以直接使用extends 关键字来继承Animal 并且会自动的调用父类的constructor 


也可以扩展传统的基于函数的“类”: Animal原型中的函数需要使用super关键字来调用

 

请注意,类不能继承常规(非可构造)对象。如果要继承常规对象,可以改用Object.setPrototypeOf()




原文地址

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Classes

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值