3.5 前端的class类使用方法
创始人
2024-05-29 03:21:51
0

Class基本用法

ES6引入的class类,让JavaScript具有更加接近面向对象编程的写法。

ES6之前,想要生成一个实例,只能通过new关键字来调用构造函数来完成。

ES6 使用class来定义类,在类的constructor构造函数中定义实例的属性。原型属性直接在class内部定义并且赋值,类的原型函数的声明,是和constructor构造函数属于同一个层级,并且省略了function关键字。比如:

class Person{// 原型属性publicName = "duxin";constructor(name,age){//实例属性this.name = name;this.age = age;}//原型函数getName(){return this.name;}
}// 通过class创建实例
const child = new Person("duxinyues",18);
console.log(child.getName()); // duxinyues

在ES5中的写法为:

//构造函数
function Person(name,age){//实例属性this.name = name;this.age = age;
}Person.prototype.publicName = "duxin";
Person.prototype.getName = function(){return this.name
}

class中有构造函数、静态属性和函数:

constructor构造函数

constructor构造函数,是class类中必须有的一个函数,如果没有手动添加,class也会自动加上一个空的构造函数。

构造函数默认返回对象的实例,也就是默认了this的指向。也可以手动修改构造函数的返回值。

静态属性和函数

如果使用static关键字来修饰静态属性的话,那么实例就不能访问该属性,这个属性只能通过类自身来访问。比如:

class Foo {static name = "duxin";static getName() {return this.name}
}console.log(Foo.getName()); //duxin

静态函数中的this指向是类本身

Class继承

ES6新增的extends关键字,可以快速实现类的继承。

在子类的constructor构造函数中,使用super函数来执行父类的构造函数,然后再来执行子类。比如:

class Parson {constructor() {this.name = "duxin"}}class Child extends Parson {constructor() {super();this.age = "908"}
}const child = new Child()
console.log(child.name); // duxin

这就是ES6中class的使用。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...