跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
博客列表
JavaScript大前端

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

ES6 引入多项关键语法革新。包括二进制与八进制字面量简化数值书写;Symbol 类型确保对象键的唯一性,避免属性覆盖;Class 语法提供清晰的类定义与继承机制,配合 super 关键字实现父子类关联。掌握这些特性有助于构建更规范、易维护的现代 JavaScript 应用。

颠三倒四发布于 2026/2/20更新于 2026/4/273 浏览
深入理解 ES6 核心语法:进制、Symbol 与类继承

ES6(ECMAScript 2015)是 JavaScript 发展史上的重要里程碑,它引入了大量现代化特性,让代码更简洁、结构更清晰。今天我们来梳理几个核心语法点,包括数字字面量的扩展、唯一标识符 Symbol 以及面向对象编程的 Class 机制。

数字字面量扩展

在 ES6 之前,我们处理二进制或八进制往往需要借助 parseInt 转换。现在可以直接使用字面量写法,直观且高效。

二进制与八进制

  • 二进制:使用前缀 0b 或 0B
  • 八进制:使用前缀 0o 或 0O
let binary = 0b1010; // 二进制 1010,十进制为 10
console.log(binary); 

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

这样写不仅可读性更强,也减少了手动转换出错的风险。

Symbol 类型

除了基础类型,ES6 还引入了 Symbol。它主要用于创建唯一的标识符,特别适合用作对象的键,避免属性名冲突。

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

// 即使描述相同,两个 Symbol 也不相等
console.log(sym1 === sym2); // 输出:false

在实际开发中,这能有效防止不同模块间因同名属性导致的意外覆盖。

类与继承

ES6 的 class 语法糖让面向对象编程更加直观。虽然底层仍是原型链,但声明方式更接近传统 OOP 语言。

定义类

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
  }

  greet() {
    console.log(`Hello from ${this.name}, I am a child.`);
  }
}

const child = new Child('Alice');
child.greet(); // 输出:Hello from Alice, I am a child.

掌握这些基础语法,能帮助你更好地构建现代前端应用架构。后续遇到复杂场景时,这些特性往往是解决问题的关键切入点。

目录

  1. 数字字面量扩展
  2. 二进制与八进制
  3. Symbol 类型
  4. 类与继承
  5. 定义类
  6. 继承机制
  • 💰 8折买阿里云服务器限时8折了解详情
  • 💰 8折买阿里云服务器限时8折购买
  • 🦞 5分钟部署阿里云小龙虾了解详情
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 上下文协议(MCP)Java SDK 指南
  • 流处理与 RAG 驱动的 Python ETL 框架架构设计
  • OpenCode:开源版 Claude Code,支持多模型与远程终端
  • JavaWeb 基础:动静 Web、URL 结构与 HTTP 协议
  • FLUX.2[klein]模型本地部署及 AI 绘画应用指南
  • OpenClaw 集成 Kimi K2.5 本地部署及远程办公自动化指南
  • 大模型工程师转行指南:方向选择与能力要求
  • 杭州E类人才认定流程与福利指南
  • Web Scraper 快速上手:网页数据批量采集指南
  • 华为昇腾 910B 使用 LLaMA-Factory 微调 Qwen3.5-32B 模型
  • 主流 AI 工具生成 Word 文档全解析与实操指南
  • WebPShop 插件指南:让 Photoshop 完美支持 WebP 图像格式
  • 嵌入式系统 Newlib 编译指南
  • Java 包与导包机制及 Scanner 类输入源详解
  • Nacos 构建 Spring Cloud Alibaba 服务发现体系
  • 默认安全治理实践:水平越权检测与前端安全防控
  • 解决 WSL2 突然无法连接网络问题
  • 医疗 AI 场景下的模型融合与集成策略
  • Python uv 依赖管理工具的安装及使用
  • Ubuntu 24.04 配置 root 账户图形化登录

相关免费在线工具

  • 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