js尚未实现
JavaScript 尚未实现的功能
JavaScript 作为一门不断发展的语言,仍有一些功能尚未完全实现或标准化。以下是一些常见的尚未实现的 JavaScript 功能或提案:
1. 顶层 await 的完全支持
尽管现代浏览器和 Node.js 已支持顶层 await,但在某些环境或旧版本中仍需通过模块或异步函数包装才能使用。
2. 管道操作符(Pipeline Operator)
提案处于 Stage 1 或 Stage 2 阶段,尚未被纳入标准。例如:
// 提案语法(未实现)
const result = x |> double |> increment |> toString;
3. 模式匹配(Pattern Matching)
类似于其他语言的 match 表达式,目前仅为提案(Stage 1),语法可能类似:
// 提案语法(未实现)
match (value) {
when { x: 0 }: "zero",
when { x: Number }: "a number",
default: "other"
}
4. 不可变数据结构(Records & Tuples)
提案(Stage 2)引入了不可变的 #[](元组)和 #{}(记录):
// 提案语法(未实现)
const tuple = #[1, 2, 3];
const record = #{ x: 1, y: 2 };
5. 装饰器(Decorators)的标准化
目前处于 Stage 3 的提案与早期实验性实现(如 TypeScript)存在差异,浏览器原生支持仍在推进中。
6. 数字分隔符的扩展
现有 _ 分隔符(如 1_000)已支持,但更灵活的分隔方式(如二进制/十六进制分隔)尚未标准化。
7. 更好的错误堆栈追踪
提案如 Error.cause 已被纳入标准,但更详细的异步堆栈追踪仍需依赖环境实现。

如何跟踪新功能进展
- 查阅 TC39 提案阶段 的 GitHub 仓库。
- 使用 Babel 或 TypeScript 的实验性功能提前尝试提案语法。
- 检查 Can I Use 或 Node.js 版本日志了解运行时支持情况。
注意事项
实验性功能可能在未来发生语法或行为变更,生产环境中建议优先使用已标准化的特性。






