Mozilla выпустила Firefox 77 для Windows, Mac и Linux. Он обеспечивает более быструю отладку JavaScript, дополнительные разрешения для расширений и несколько новых функций веб-платформы.
Mozilla удалось придерживаться 4-недельной периодичности выпуска Firefox, поэтому наш охват новых версий подскочил с 69 до 77. Извините за пробел, но, поскольку в этом выпуске есть улучшения для разработчиков JavaScript, он показался хорошим для смотреть на.
В последних выпусках упор был сделан на улучшенную производительность отладки, и в этом выпуске Firefox увидел повышение производительности в исходных картах JavaScript и CSS. Флориан Шольц и Харальд Киршнер в блоге Mozilla заявляют:
«В некоторых случаях встроенных исходных карт время загрузки улучшилось в 10 раз. Что еще более важно, мы повысили надежность для многих других конфигураций исходных карт. Мы смогли настроить резервные варианты для синтаксического анализа и сопоставления, благодаря вашим отчетам о конкретных случаях слегка некорректных сгенерированные исходные карты. В целом, теперь вы должны увидеть проекты, которые просто работают, которые ранее не могли загрузить исходный код CSS и JavaScript / TypeScript / и т. д. «.
Понимая, что пошаговое выполнение, которое является важной частью отладки, может быть непростым, поскольку вы можете легко сбиться с пути и выйти за пределы функций, а также между библиотеками и вашим собственным кодом, Firefox 77 представляет долгожданное изменение, которое должно сделать пошаговое выполнение кода более интуитивным и снизить вероятность пропуска важной строки.
«Отладчик теперь будет учитывать текущий выбранный стек при переходе. Это полезно, когда вы перешли в вызов функции или приостановили выполнение библиотечного метода ниже по стеку. Просто выберите нужную функцию в стеке вызовов, чтобы перейти к ее текущая приостановленная линия и продолжайте движение оттуда. »
Точки наблюдения, которые были введены в Firefox 72 для облегчения понимания изменений состояния, были упрощены для использования в Firefox 77 с помощью новой опции, которая объединяет get / set, поэтому любая ссылка на скрипт вызовет паузу:
Новый выпуск также расширяет необязательные разрешения для расширений. Как объясняется в сообщении в блоге, это решает проблему, возникшую в Firefox Quantum:
Начиная с Firefox 57, пользователи видят разрешения, к которым расширение хочет получить доступ, во время установки или при добавлении каких-либо новых разрешений во время обновления. Частота этих запросов может быть чрезмерной, и отказ принять новый запрос на разрешение во время обновления расширения может привести к тому, что пользователи будут вынуждены использовать старую версию. Мы упрощаем разработчикам расширений возможность избежать появления большого количества запросов, сделав больше разрешений доступными в качестве дополнительных. Дополнительные разрешения не запускают запрос разрешения при установке или добавлении к обновлению расширения, а также могут быть запрошены во время выполнения, чтобы пользователи видели, какие разрешения запрашиваются в контексте.
В Firefox 77 представлены две функции веб-платформы. FirstString.replaceAll можно рассматривать как аналог toString.matchAll, который был введен в Firefox 67 как более удобный способ перебора совпадений результатов регулярных выражений. Другой, запрос курсора IndexedDB, упрощает написание таких вещей, как функции оболочки, которые «обновляют» функции базы данных.
Ян Эллиот — автор книги «Просто JavaScript: идиоматический подход»; JavaScript Async; Просто jQuery: Core UI и Just jQuery: Events, Async & AJAX, которые являются частью библиотеки I Programmer Library, опубликованной I / O Press.