Спецификация ECMAScript 2021 для JavaScript приближается к финишу

Spread the love

Предложение для следующей версии официальной спецификации JavaScript вводит усовершенствования в строки, промисы и ссылки на объекты.

Спецификация находится под юрисдикцией ECMA International. ECMAScript 2021, который, как ожидается, будет официально утвержден в июне, будет включать в себя следующие функции:

  • String.prototype.ReplaceAll, предоставляя разработчикам возможность заменить все экземпляры подстроки в строке без использования глобального регулярного выражения. Наиболее распространенным способом достижения этой цели на данный момент является использование глобального регулярного выражение. Между тем String.prototype.replace влияет только на первое вхождение при использовании со строковым аргументом. Предлагаемое решение добавило бы метод replaceAll к прототипу String, предоставив разработчикам простое решение.
  • AggregateError, новый тип ошибки, представляющий сразу несколько ошибок.
  • Promise.any, комбинатор промисов, который замыкается при выполнении входного значения. Promise.any принимает итерацию промисов и возвращает один, которое резолвится со значением этого обещания. Если промисы итерируемого объекта не выполняются, то промис возвращается с AggregateError. Этот метод противоположен Promise.all.
  • WeakRef для ссылки на целевой объект без защиты его от сборки мусора. Это предложение включает в себя основные новые функциональные возможности: создание слабых ссылок на объекты с помощью класса WeakRefcode и запуск определяемых пользователем финализаторов после сборки мусора с использованием класса FinalizationRegistryWeakRef и FinalizationRegistry, еще одна новая функция, считаются расширенными функциями, и их правильное использование требует тщательного обдумывания. По возможности их лучше избегать.
  • FinalizationRegistry, чтобы управлять регистрацией и отменой регистрации операций очистки, выполняемых, когда целевые объекты собираются сборщиком мусора.
  • Array.prototype.sort стал более точным, чтобы уменьшить количество случаев, приводящих к порядку сортировки, определяемому реализацией.
  • Разделители для числовых литералов, позволяющие разработчикам сделать числовые литералы более удобочитаемыми, создавая визуальное разделение между группами цифр. Большие числовые литералы трудно анализировать визуально, особенно при повторении длинных цифр.
  • Операторы логического присваивания, объединяющие логические операторы и выражения присваивания. В основе этого предложения лежит довод о том, что существует дюжина математических операторов присваивания, но ни одного для часто используемых логических операторов.

ECMAScript 2021 следует за ECMAScript 2020, который был официально одобрен в июне прошлого года. ECMAScript 2020 представил функции, начиная от нового средства импорта для загрузки модулей и заканчивая типом BigInt для работы с целыми числами произвольной точности. Более подробно об функция ECMAScript 2020 можно почитать в статье “10 новых функций ES2020, которые вы должны знать

Была ли вам полезна эта статья?
[3 / 4.7]

Spread the love
Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments