1.ES5和ES6实现构造函数

  1. /* ES5 */
  2. /* function Person(name,age){
  3. this.name = name;
  4. this.age = age;
  5. }
  6. Person.prototype.sayName = function(){
  7. this.name
  8. } */
  9. class Person{
  10. constructor(name,age){
  11. this.name = name;
  12. this.age = age;
  13. }
  14. sayName(){
  15. console.log(this.name)
  16. }
  17. }
  18. /* 使用extends关键字可以实现继承,之后自动拥有父类的属性和方法 */
  19. class Student extends Person{
  20. constructor(name,age,skill){
  21. super(name,age);
  22. this.skill = skill;
  23. }
  24. /* 在子类的方法中调用父类的方法(用this) */
  25. saySkill(){
  26. this.sayName()
  27. }
  28. }