首页 > 其他分享 >js高级ES6class构造函数与super继承

js高级ES6class构造函数与super继承

时间:2022-10-08 00:55:06浏览次数:52  
标签:console log show js width ES6class super class 构造函数

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>class构造函数 16:22</title>
</head>

<body>
  <script>
    //在java语言中, 没有原型概念 -- 导致学习JS非常难以接受
    // JAVA的clas语法, 在底层会自动完成原型的一系列操作

    class Rec {
      // 所有{}中的函数都会自动添加到 Rec 的原型里, 自动设定权限
      // 不需要书写 function 关键词
      // constructor: 构造方法 , 固定的方法名
      // new运算符会自动触发此方法  new Rec(宽度, 高度)
      constructor(width, length) {
        this.width = width
        this.length = length
      }

      area() {
        return this.width * this.length
      }
      zc() {
        return (this.length + this.width) * 2
      }
    }

    var r1 = new Rec(10, 5)
    console.log(r1) //观察原型
    console.log(r1.area())
    console.log(r1.zc())
  </script>
</body>

</html>

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>class_super super关键词</title>
</head>

<body>
  <script>
    class Father {
      show() {
        console.log('我是父元素的show')
      }
    }

    class Son extends Father {
      // 如果子类中重写了 show 方法, 则优先调用自身重写的
      show() {
        // 关键词: super  代表父元素
        super.show() //触发 父元素 Father的show
        console.log('我是子元素的show');
      }
    }

    var s1 = new Son()
    s1.show()
  </script>
</body>

</html>

 

标签:console,log,show,js,width,ES6class,super,class,构造函数
From: https://www.cnblogs.com/linxinzhi/p/16767599.html

相关文章

  • JSP——EL表达式&JSTL标签
    EL表达式       JSTL标签      使用方法:        if标签           foreach标签:    <c:forEachitems="${brands}"......
  • JavaScript高级复习——构造函数和原型
    构造函数JavaScript的构造函数中可以添加一些成员,可以在构造函数本身上添加,也可以在构造函数内部的this上添加。通过这两种方式添加的成员,就分别称之为静态成员和实例成员......
  • leetcode 20. 有效的括号 js实现
    给定一个只包括'(',')','{','}','[',']' 的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都......
  • 浅析package.json 和 package-lock.json的区别
    一package.json中的版本符号{"react":"^18.2.0","react-dom":"~18.2.0""react-refresh":"0.11.0",}插入符号^18.2.0:匹配18.X.X的最新版本。波浪符号~1......
  • js读取文件内容
    原理是,FileReader对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用File或Blob对象指定要读取的文件或数据。其中File对象可以是来自......
  • JS数据结构与算法
     1.重要性什么是数据结构?数据结构和算法的重要性 2.线性结构2.1数组数组使用的API 2.2栈自定义栈栈的应用 2.3队列自定义队列优先级队列队列的应......
  • 如何理解package.json中的proxy字段?
    入职新公司以来,第一个月接手vue项目,第二个月接手angularjs项目,第三个月加入react重构项目。心生感叹:业务驱动式学习是一种高效率的学习方式,保持好奇心,在业务中快速成长!新项......
  • 深入理解JSON.stringify()
    就我目前4年(实习了1年,965了1年,996了2年,算3年感觉少了,说是4年老司机也不为过吧。)的工作经验来看,JSON.stringify一般有以下用途:深拷贝:深拷贝引用类型的数据序列化:服务端存储......
  • tsconfig.json的esModuleInterop使用场景是怎样的?
    问题场景npm包改造前,仅支持esmnpm包改造后,既支持esm,又支持cjs为什么改造后,还是会报错?如何理解ts编译配置esModuleInterop?总结问题场景遇到一个很有趣的场景,cjs中需要引入原......
  • 浅谈浏览器架构、单线程js、事件循环、消息队列、宏任务和微任务
    关键词:​​多进程、单线程、事件循环、消息队列、宏任务、微任务​​看到这些词仿佛比较让人摸不着头脑,其实在我们的日常开发中,早就和他们打过交道了。我来举几个常见的例子......