10.原型链继承.html 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <script>
  10. /**
  11. * 原型链继承
  12. * 实现:
  13. * 子类的原型 = 父类的实例 实例顺着父类的原型链找到父类的属性和方法
  14. * 优点:写法简单 子类可以直接继承父类原型的方法
  15. * 缺点:
  16. * 父类中引用数据类型 共享的实例 若发生修改 则全部修改
  17. * 父类不能进行传参
  18. */
  19. function Person() {
  20. this.name = 'tutu';
  21. this.age = 3;
  22. this.list = ["吃饭", "睡觉", "打豆豆"];
  23. }
  24. Person.prototype.say = function () {
  25. console.log("hello");
  26. }
  27. function Child() { };
  28. Child.prototype = new Person();
  29. let c1 = new Child();
  30. let c2 = new Child();
  31. c1.list.push("玩耍");
  32. console.log(c1, 'c1')
  33. console.log(c2, 'c2')
  34. c1.say();
  35. </script>
  36. </body>
  37. </html>