Hi,我是布兰妮甜 !ECMAScript 2015,通常被称为 ES6 或 ES2015,是 JavaScript 语言的一次重大更新。它引入了许多新特性,其中最引人注目的就是类(class)语法。尽管 JavaScript 一直以来都支持基于原型的继承,但新的类语法提供了一种更加直观和易于理解的方式来定义对象构造函数以及它们之间的继承关系。本文将深入探讨
ES6 类语法
,包括它的基本用法、静态方法、继承机制以及私有属性等高级特性。
一、基础用法
1. 定义一个简单的类
在 ES6 中,class
关键字用于声明一个新的类。每个类都有一个构造函数(constructor
),它是实例化时自动调用的方法,用来初始化对象的状态。
// 定义一个名为 Person 的类
class Person {
// 构造函数
constructor(name, age) {
this.name = name;
this.age = age;
}
// 实例方法
greet() {
console.log(`Hello, my name is ${
this.name}`);
}
}
// 创建一个 Person 类的新实例
const person = new Person('Alice', 30);
person.greet(); // Hello, my name is Alice
2. 类表达式 vs 类声明
除了上面提到的类声明形式外,还可以使用类表达式来定义类,这允许我们将类赋值给变量或作为参数传递给函数。
// 类表达式
const Animal = class {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${
this.name} makes a noise.`);
}
};
const animal = new Animal('Dog');
animal.speak(); // Dog makes a noise.
二、静态成员
静态成员与类本身关联而不是具体的实例。它们通常用来创建工具函数或工厂方法,可以直接通过类名调用,而不需要先创建实例。
class MathUtil {
static add(