当前位置:首页 > 科技  > 软件

ES13 中最具变革性的五个 JavaScript 功能

来源: 责编: 时间:2024-07-17 16:50:22 278观看
导读ES13 包含许多有价值的功能,彻底改变了我们编写 JavaScript 的方式。从异步升级到数组糖等等,让我们来看看它们,看看你错过了什么。1. 顶级 await在 ES13 之前,我们永远无法在全局范围内使用 await。之前:我们总是必须将其

ES13 包含许多有价值的功能,彻底改变了我们编写 JavaScript 的方式。OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

从异步升级到数组糖等等,让我们来看看它们,看看你错过了什么。OB028资讯网——每日最新资讯28at.com

1. 顶级 await

在 ES13 之前,我们永远无法在全局范围内使用 await。OB028资讯网——每日最新资讯28at.com

之前:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

我们总是必须将其放入异步函数中或创建一个异步 IIFE:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

ES13 之后:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

2. 类声明升级

1). 类字段声明

在 ES13 之前,我们只能在构造函数中声明类字段:OB028资讯网——每日最新资讯28at.com

与许多其他语言不同,我们不能在类的最外层范围内声明或定义它们。OB028资讯网——每日最新资讯28at.com

之前:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

现在有了 ES13:OB028资讯网——每日最新资讯28at.com

就像在 TypeScript 中一样:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

2). 私有方法和字段

在 ES13 之前,创建私有方法是不可能的。OB028资讯网——每日最新资讯28at.com

我们还不得不使用丑陋的下划线 hack 来表示隐私——但那只是一种暗示。OB028资讯网——每日最新资讯28at.com

之前:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

现在 ES13 之后:OB028资讯网——每日最新资讯28at.com

我们可以通过在类前面加上井号 (#) 来向类添加私有字段和成员:OB028资讯网——每日最新资讯28at.com

如果您尝试从类外部访问它,则会收到语法错误:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

我们可以从错误消息中看到一些有趣的东西:OB028资讯网——每日最新资讯28at.com

编译器甚至不期望您尝试从类外部访问私有字段——它假设您正在尝试创建一个。OB028资讯网——每日最新资讯28at.com

3). 静态类字段和静态私有方法

静态字段——类本身的属性,而不是任何特定实例。OB028资讯网——每日最新资讯28at.com

自 ES13 以来,我们现在可以轻松地为任何类创建它们:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

3. 数组升级:新的 at() 方法

因此,我们通常使用方括号 ([]) 来访问数组的第 N 个元素。OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

但访问从末尾开始的第 N 个项目总是很麻烦——我们必须使用 arr.length - N 进行索引:OB028资讯网——每日最新资讯28at.com

ES13 之前:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

幸运的是,ES13 带来了新的 at() 方法,解决了所有问题:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

4. 静态类块

静态字段带来了静态块。OB028资讯网——每日最新资讯28at.com

在创建类时只执行一次代码 — 就像 C# 和 Java 等 OOP 语言中的静态构造函数一样。OB028资讯网——每日最新资讯28at.com

因此,您可以在类中创建任意数量的静态块 — 所有代码都将按照您定义它们的顺序运行:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

5. 错误报告升级

因此,有时我们会捕获调用堆栈下方方法的错误,然后将其重新抛回堆栈。OB028资讯网——每日最新资讯28at.com

但当我们这样做时,我们会丢失原始错误中的关键信息:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

这就是为什么 ES13 引入了一个新的原因属性来保存这些重要信息并使调试更容易:OB028资讯网——每日最新资讯28at.com

OB028资讯网——每日最新资讯28at.com

最后的想法

总体而言,ES13 对 JavaScript 来说是一次重大飞跃,它具有多项对现代开发至关重要的功能。OB028资讯网——每日最新资讯28at.com

让您能够编写更简洁、更具表现力和更清晰的更干净的代码。OB028资讯网——每日最新资讯28at.com


OB028资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-101374-0.htmlES13 中最具变革性的五个 JavaScript 功能

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python 解析 XML 格式数据:实战指南

下一篇: CSS锚点定位终于来了!

标签:
  • 热门焦点
  • 5月iOS设备性能榜:M1 M2依旧是榜单前五

    和上个月一样,没有新品发布的iOS设备性能榜的上榜设备并没有什么更替,仅仅只有跑分变化而产生的排名变动,刚刚开始的苹果WWDC2023,推出的产品也依旧是新款Mac Pro、新款Mac Stu
  • Automa-通过连接块来自动化你的浏览器

    1、前言通过浏览器插件可实现自动化脚本的录制与编写,具有代表性的工具就是:Selenium IDE、Katalon Recorder,对于简单的业务来说可快速实现自动化的上手工作。Selenium IDEKat
  • JavaScript学习 -AES加密算法

    引言在当今数字化时代,前端应用程序扮演着重要角色,用户的敏感数据经常在前端进行加密和解密操作。然而,这样的操作在网络传输和存储中可能会受到恶意攻击的威胁。为了确保数据
  • 虚拟键盘 API 的妙用

    你是否在遇到过这样的问题:移动设备上有一个固定元素,当激活虚拟键盘时,该元素被隐藏在了键盘下方?多年来,这一直是 Web 上的默认行为,在本文中,我们将探讨这个问题、为什么会发生
  • 自律,给不了Keep自由!

    来源 | 互联网品牌官作者 | 李大为编排 | 又耳 审核 | 谷晓辉自律能不能给用户自由暂时不好说,但大概率不能给Keep自由。近日,全球最大的在线健身平台Keep正式登陆港交所,努力
  • 签约井川里予、何丹彤,单视频点赞近千万,MCN黑马永恒文希快速崛起!

    来源:视听观察永恒文希传媒作为一家MCN公司,说起它的名字来,可能大家会觉得有点儿陌生,但是说出来下面一串的名字之后,或许大家就会感到震惊,原来这么多网红,都签约这家公司了。根
  • 英特尔Xe-HP项目终止,将专注Xe-HPC/HPG系列显卡

    据10 月 31 日消息报道,英特尔高级副总裁兼加速计算系统和图形事业部总经理 表示,Xe-HP“ Arctic Sound” 系列服务器 GPU 已经应用于 oneAPI devcloud 云服
  • 电博会上海尔智家模拟500平大平层,还原生活空间沉浸式体验

    电博会为了更好地让参展观众真正感受到智能家居的绝妙之处,海尔智家的程传岭先生同样介绍了展会上海尔智家的模拟500平大平层,还原生活空间沉浸式体验。程传
  • 利用职权私自解除被封帐号 Meta开除20多名员工

    11月18日消息,据外媒援引知情人士表示,过去一年时间内,Facebook母公司Meta解雇或处罚了20多名员工以及合同工,指控这些人通过内部系统以不当方式重置用户帐号,其
Top