跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
JavaScript大前端

深入理解 ES6 核心语法:进制、Symbol 与类继承

ES6 引入多项现代化特性提升开发效率。内容涵盖二进制八进制字面量写法、Symbol 唯一标识符机制以及 Class 类继承规范。通过实际代码示例展示 0b/0o 前缀用法,解释 Symbol 创建不重复键的原理,并强调子类中 super 调用的必要性。适合希望掌握现代 JavaScript 基础语法的开发者参考。

黑客发布于 2026/3/22更新于 2026/10/1979 浏览
深入理解 ES6 核心语法:进制、Symbol 与类继承

深入理解 ES6 核心语法

ECMAScript 是 JavaScript 的标准化版本,由 ECMA 国际组织制定。它定义了语言的基础语法、类型和关键字。ES6 作为第六个主要版本,在 2015 年发布后彻底改变了 JavaScript 的开发体验,让代码更加现代化且易读。

进制表示法

ES6 之前,我们只能处理十进制。现在,为了更直观地处理位运算或特定配置,可以直接使用二进制和八进制。

二进制使用前缀 0b 或 0B,八进制则使用 0o 或 0O。这比传统的十六进制转换要直观得多。

let binary = 0b1010; // 二进制 1010,对应十进制 10
console.log(binary);

let octal = 0o12; // 八进制 12,对应十进制 10
console.log(octal);

Symbol 类型

在处理对象属性时,有时候我们需要一个唯一的标识符,避免键名冲突。Symbol 就是为此设计的,它能创建唯一且不可变的值。

即使描述相同,两个 Symbol 也不相等。这非常适合用作对象的私有键。

const sym1 = Symbol('description');
const sym2 = Symbol('description');

// 即使描述一样,它们也是不同的引用
console.log(sym1 === sym2); // 输出:false

类与继承

ES6 引入了 class 关键字,让面向对象编程的语法糖更加清晰。类本质上是一个模板,定义了对象的属性和方法。

class Parent {
  constructor(name) {
    this.name = name;
  }
  greet() {
    console.log(`Hello, my name is ${this.name}.`);
  }
}

子类继承

当子类需要扩展父类功能时,必须使用 extends。注意,如果在子类构造函数中定义逻辑,必须先调用 super()。这是访问 this 的前提,否则直接抛出错误。

class Child extends Parent {
  constructor(name) {
    super(name); // 必须先调用父类构造函数
    this.name = name;
  }
  
  greet() {
    super.greet(); // 可以调用父类方法
    console.log("I am a child.");
  }
}

这样写不仅结构清晰,也保证了继承链的正确执行。

目录

  1. 深入理解 ES6 核心语法
  2. 进制表示法
  3. Symbol 类型
  4. 类与继承
  5. 子类继承

更多推荐文章

查看全部
  • LangChain 工具调用与结构化输出实战
  • Mac 版 Word 缺失仿宋 GB2312 字体修复指南
  • OpenCode 开源 AI 编程助手工具介绍
  • MySQL 迁移 TCO 全景账本:隐性成本与工程化工具链实测
  • 鸿蒙 6 正式发布:功能升级构建跨设备安全流畅新生态
  • macOS 彻底卸载 Python 的完整指南
  • Qwen2.5-7B-Instruct 工具调用集成心知天气示例
  • nanobind C++/Python 高性能绑定实战指南
  • 基于 OpenClaw 快速搭建飞书 AI 机器人
  • 大模型驱动的 Agent 体系框架与核心推理引擎解析
  • C++11 新特性深度解析:从可变参数模板到 Lambda 表达式
  • Mac mini M4 部署 OpenClaw + Ollama 本地大模型接入飞书机器人
  • Elasticsearch 核心概念与 Java 客户端实战
  • MySQL 架构与执行原理详解
  • 医疗 AI 中的模型融合与集成策略实战
  • Llama-Factory 打造大模型定制化流水线
  • 前端错误处理最佳实践与策略
  • FPGA 摄像头采集处理显示指南:OV5640 到 HDMI 实时显示
  • Python 基础:Jupyter Notebook 实战与优势介绍
  • 人脸识别核心算法:FaceNet 与 ArcFace 原理及实战

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online