Jinuss's blog Jinuss's blog
首页
  • 源码合集

    • Leaflet源码分析
    • Openlayers源码合集
    • vue3源码
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • 学习
  • 实用技巧
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

东流

Web、WebGIS技术博客
首页
  • 源码合集

    • Leaflet源码分析
    • Openlayers源码合集
    • vue3源码
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • 学习
  • 实用技巧
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • React

  • Vue

  • JavaScript文章

  • 学习笔记

  • openlayers

  • threejs

  • MapboxGL

  • 工具

  • 源码合集

  • ECMAScript历年新特性

    • ECMAScript2016(ES7)新特性
    • ECMAScript2017(ES8)新特性
    • ECMAScript2018(ES9)新特性
    • ECMAScript2019(ES10)新特性
    • ECMAScript2020(ES11)新特性
    • ECMAScript2021(ES12)新特性
    • ECMAScript2022(ES13)新特性
    • ECMAScript2023(ES14)新特性
    • ECMAScript2024(ES15)新特性
    • ECMAScript2025(ES16)新特性
      • 概述
      • ECMAScript2025的新特性如下:
        • Import+JSON
        • 迭代器辅助方法
        • Set实例方法增强
        • 正则表达式
        • 异步处理改进
        • 数值表示扩展
        • 其他特性
  • 前端
  • ECMAScript历年新特性
东流
2025-07-30
目录

ECMAScript2025(ES16)新特性

# 概述

ECMAScript2025于2025年6月26日正式发布, 本文会介绍ECMAScript2025(ES16),即ECMAScript的第16个版本的新特性。

以下摘自官网:ecma-262 (opens new window)

ECMAScript 2025, the 16th edition, added a new Iterator global with associated static and prototype methods for working with iterators; added methods to Set.prototype for performing common operations on Sets; added support for importing JSON modules as well as syntax for declaring attributes of imported modules; added the RegExp.escape method for escaping a string to be safely used in a regular expression; added syntax for enabling and disabling modifier flags inline within regular expressions; added the Promise.try method for calling functions which may or may not return a Promise and ensuring the result is always a Promise; and added a new Float16Array TypedArray kind as well as the related DataView.prototype.getFloat16, DataView.prototype.setFloat16, and Math.f16round methods.

# ECMAScript2025的新特性如下:

  • Import+JSON
  • 迭代器辅助方法
  • Set实例方法增强
  • 正则表达式
  • 异步处理改进
  • 数值表示扩展

# Import+JSON

ES2025引入了import attributes,用于导入非JavaScript类型的模块,比如JSON模块。

如下:

import config from './config.json' with {type:'json'}
1

# 迭代器辅助方法

ES2025新增同步迭代器辅助函数:为所有同步迭代器添加一系列的辅助方法,比如map、filter、some等,并且支持链式调用,可用于链式处理可迭代对象的数据,实现惰性求值,避免创建多个中间数组。

# Set实例方法增强

ES2025为Set实例添加了如下方法:

  • intersection:返回两个集合的交集
  • union:返回两个集合的并集
  • difference:返回两个集合的差集
  • symmetricDifference:返回两个集合的对称差集
  • isSubsetOf:判断一个集合是否是另一个集合的子集
  • isSupersetOf:判断一个集合是否是另一个集合的超集
  • isDisjointFrom:判断两个集合是否没有交集

# 正则表达式

ES2025在正则表达式方面有如下增强:

  1. 新增RegExp.escape方法,可将字符串中的正则元字符进行转义
  2. 正则表达式内联标志
  3. 重复命名捕获组

# 异步处理改进

ES2025新增了Promise.try()方法,用于统一封装同步返回值或抛错的函数,对于一个可能会抛错的异常函数,使用Promise.try可以更方便进行错误处理。

# 数值表示扩展

ES2025提供对16位浮点数的原生支持,包括Float16Array、DataView.prototype.getFloat16/DataView.prototype.setFloat16以及Math.f16round方法,这些方法在WebGPU/WebGL中可节省带宽和内存。

# 其他特性

  1. 后置检查的声明式控制流:引入checked{}和asset关键字
  2. ArrayBuffer的构造共享数组
编辑 (opens new window)
上次更新: 2025/07/31, 08:25:50
ECMAScript2024(ES15)新特性

← ECMAScript2024(ES15)新特性

最近更新
01
Set和WeakSet
08-04
02
Map和WeakMap
08-04
03
ECMAScript2024(ES15)新特性
07-30
更多文章>
Theme by Vdoing | Copyright © 2024-2025 东流 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式