ES6的 class类

news/2024/7/19 15:26:24 标签: js

类声明和函数声明的区别和特点

1、函数声明可以被提升,类声明不能提升(与let声明类似)。

2、类声明中的代码自动强行运行在严格模式下。

3、类中的所有方法都是不可枚举(不可循环)的,而自定义类型中,可以通过Object.defineProperty()手工指定不可枚举属性。

4、每个类都有一个[[construct]]的方法。

5、只能使用new来调用类的构造函数。

6、不能在类中修改类名。

摘抄:https://mp.weixin.qq.com/s


定义在类中的方法会被写在原型上
在这里插入图片描述


constructor

在这里插入图片描述
其中 constructor 方法是类的构造函数,是一个默认方法,通过 new 命令创建对象实例时,自动调用该方法。一个类必须有 constructor 方法,如果没有显式定义,一个默认的 consructor 方法会被默认添加。所以即使你没有添加构造函数,也是会有一个默认的构造函数的。一般 constructor 方法返回实例对象 this ,但是也可以指定 constructor 方法返回一个全新的对象,让返回的实例对象不是该类的实例。

摘抄:https://juejin.cn/post/6844903638674980872

参数

接收创建实例的时候传过来的参数

<script>
  class a {
    constructor(name, age) {
      this.name = name
      this.age = age
    }
    names() {
      console.log("我是name");
    }
  }
  const newa = new a("你好", "12")
  console.log(newa.name);//你好
  console.log(newa.age);//12
</script>

super

super要写在constructor中,并且如果要在constructor中写属性必须在super后面

一般继承的时候需要调用supersuper可以给父类传递参数

super ()相当于 父类.prototype.constructor.call (this)
在这里插入图片描述


http://www.niftyadmin.cn/n/1371465.html

相关文章

Vue3 script-setup语法糖

vscode中使用script setup 1.起初 Vue3.0 暴露变量必须 return 出来&#xff0c;template 中才能使用&#xff1b; 2.Vue3.2 中 只需要在 script 标签上加上 setup 属性&#xff0c;组件在编译的过程中代码运行的上下文是在 setup() 函数中&#xff0c;无需 return&#xff…

面试题:问js为什么是单线程的

js为什么是单线程的 如果js是多线程的话&#xff0c;一个线程添加DOM一个线程删除DOM那就会产生差错&#xff0c;浏览器不知道应该听谁的&#xff0c;到底删除DOM还是添加DOM。 js是单线程语言&#xff0c;浏览器只分配给js一个主线程&#xff0c;用来执行任务&#xff08;函…

fetch的各种api

1.结构&#xff1a; fetch(url&#xff0c;{参数)}).then(...).catch(...)2.与async await一起使用 async function fetchMovies() {const response await fetch(/movies);// 等待直到请求完成console.log(response); }3.请求 JSON 数据 fetch()请求成功以后&#xff0c;得…

fetch常用api,fetch和axios的区别

axios 1.从浏览器中创建 XMLHttpRequest 2.客户端支持防止CSRF 3.提供了一些并发请求的接口&#xff08;重要&#xff0c;方便了很多的操作&#xff09; 4.从 node.js 创建 http 请求 5.拦截请求和响应 6.转换请求和响应数据 7.自动转换JSON数据 fetch优势 1.语法简洁…

网络优化,css优化, js优化

网络优化 减少HTTP请求&#xff0c;合并文件、精灵图减少DNS查询&#xff0c;使用缓存 当使用了CDN时&#xff0c;DNS 服务器根据用户 IP 地址&#xff0c;将域名解析成相应节点的缓存服务器IP地址&#xff0c;实现用户就近访问。使用 CDN 服务的网站&#xff0c;只需将其域名…

web常见的攻击方式

xss攻击 用户通过浏览器访问web网页&#xff0c;xss攻击通过各种办法在用户访问页面的时候&#xff0c;插入一些自己的代码或者脚本&#xff0c;让用户访问页面的时候&#xff0c;就可以执行这个脚本&#xff0c;攻击者通过插入的脚本的执行就会获得一些信息&#xff08;比如c…

单例模式,策略模式,代理模式,迭代器模式,发布订阅模式

单例模式 1.什么是单例模式 是指在一个类只能有一个实例&#xff0c;即使多次实例化该类&#xff0c;也只返回第一次实例化后的实例对象。 2.主要解决&#xff1a; 一个全局使用的类频繁地创建与销毁。 3.js单例模式何时使用&#xff1a; 当您想控制实例数目&#xff0c;…

setup里面获取dom元素

注意&#xff1a;ref“变量” 变量ref&#xff08;null&#xff09;变量.value这里的变量名称要一致