---
title: "What's new in ECMAScript 2022?"
publication: "JavaScript Weekly"
issue: 595
published_at: "2022-06-24"
canonical_url: "https://javascriptweekly.com/issues/595"
---

Plus Vue 2.7 is in beta, as is TypeScript 4.8, and a way to make JS CDNs fight for your love. |        

#​595 — June 24, 2022 

[Unsubscribe](https://javascriptweekly.com/leave/*|UID|*)|[Read on the Web](https://javascriptweekly.com/issues/595)   

JavaScript Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/rhcwkbd9qv1rt5reoupv.jpg)](https://2ality.com/2022/06/ecmascript-2022.html)  

[Ecma International Approves ECMAScript 2022, But What’s New?](https://2ality.com/2022/06/ecmascript-2022.html) — Thanks Ecma – [ECMAScript 2022 is now an _approved_ standard.](https://www.ecma-international.org/news/ecma-international-approves-new-standards-6/) JavaScript’s resident doctor brings us up to speed with what this means in practice, as well as answering a few common questions. You’ll already be using some of these features – this is mostly about tying up the formalities. On to ES2023.. 

Dr. Axel Rauschmayer   

❓ If you're unfamiliar with ECMAScript as a term, it's the name of the generic, standardized language behind JavaScript implementations, as JavaScript is technically a trademark of the Oracle Corporation. [Longer explanation.](https://exploringjs.com/impatient-js/ch_history.html#standardizing-javascript)  

[In Defense of Blocks to Create Localized Scope](https://gist.github.com/getify/712d994419326b53cabe20138161908b) — Kyle Simpson (of YDKJS fame) pops up to give his thoughts on a recently popular [article about using ‘block statements’](https://www.webpro.nl/scraps/javascript-block-statement) to group code together which attracted some criticism. In short, Kyle’s a big fan of the approach. 

Kyle Simpson   [![\](https://copm.s3.amazonaws.com/490a4700.png)](https://frontendmasters.com/courses/web-components/?utm_source=javascriptweekly&utm_medium=email&utm_content=webcomponents) 

[New Course on Web Components](https://frontendmasters.com/courses/web-components/?utm_source=javascriptweekly&utm_medium=email&utm_content=webcomponents) — "_Web Components are one of the most exciting new technologies on the web platform today_." ~Dave Rupert. Learn to create your own custom web components using JavaScript and the Lit library in this course. 

Frontend Masters sponsor   

[When You Should Prefer Map Over Object In JavaScript](https://www.zhenghao.io/posts/object-vs-map) — `Map` objects are (nearly) universally available in JS implementations now and present some benefits to using regular `Object`s. 

Zhenghao He   

[What the React Team is Working On Now](https://reactjs.org/blog/2022/06/15/react-labs-what-we-have-been-working-on-june-2022.html) — With the React 18 launch behind them, the React team has turned their attention to _the future_ and this post gives some detailed hints of what’s going on. It’s **not** a road map, though, and they stress that some of what’s discussed many not even materialize as-is. 

The React.js Team   

**IN BRIEF:** 

- The [beta of TypeScript 4.8](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8-beta/) is here, complete with performance improvements and, as usual, a handful of intricately geeky type inference enhancements.
- 💰 The company behind [Deno](https://deno.land/) has [raised $21m in a series A funding round.](https://deno.com/blog/series-a) The money will help them take the V8 isolates-based [Deno Deploy](https://deno.com/deploy) service to the next level.
- 🤭 Why choose one JavaScript CDN when you can [make them all fight it out?](https://twitter.com/jimniels/status/1539976086645268480)
- [Vue 2.7 is in beta.](https://blog.vuejs.org/posts/vue-2-7-beta.html) "2.7," you say? Some Vue 3 features have been backported and it's aimed at folks who need to stay on Vue 2.x due to dependencies.
- 🤖 GitHub Copilot, an 'AI pair programmer' of sorts, is [now generally available](https://github.blog/2022-06-21-github-copilot-is-generally-available-to-all-developers/) after a long preview phase. It's pretty effective, if [controversial.](https://news.ycombinator.com/item?id=31847931) In related news, Amazon has unveiled its own attempt called [Amazon CodeWhisperer](https://aws.amazon.com/blogs/aws/now-in-preview-amazon-codewhisperer-ml-powered-coding-companion/) which, too, supports JavaScript. 

**RELEASES:** 

[Angular ESLint 14.0](https://github.com/angular-eslint/angular-eslint/releases/tag/v14.0.0)
 [FontKit 2.0](https://github.com/foliojs/fontkit)– Advanced font engine for Node and the browser.
 [melonJS 11.0](https://github.com/melonjs/melonJS) – 2D sprite-based game engine.
 [Fastify 4.1](https://github.com/fastify/fastify) – Popular low overhead Node web framework.
 [Capacitor 3.6](https://github.com/ionic-team/capacitor) – Build cross-platform native apps with JS.
 [Partytown 0.6.2](https://github.com/BuilderIO/partytown) – Relocate intensive code into Web Worker threads.
 [Gatsby 4.17](https://www.gatsbyjs.com/docs/reference/release-notes/v4.17/)
 [React Native 0.69](https://reactnative.dev/blog/2022/06/21/version-069) – Hello React 18 support!    

💻 Jobs  

[JavaScript Developer at X-Team (Remote)](https://x-team.com/remote-javascript-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=cooperpress-js&utm_content=js) — Join the most energizing community for developers and work on long-term projects for Riot Games, FOX, Sony, Coinbase, and more. 
X-Team   

[Senior Software Engineer at This Dot Labs (Remote, Worldwide)](https://www.thisdot.co/job/senior-software-engineer-javascript-remote) — Great benefits working in modern tech stacks and amazing clients such as Google, Meta, Twilio, Cloudinary, Roblox, and more. 
This Dot Labs   

[Find JavaScript Jobs with Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-javascriptweekly%29&utm_content=find-your-next-job) — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers. 
Hired    

📒 Articles & Tutorials  

[Using Playwright Test to Run Unit Tests](https://pkerschbaum.com/blog/using-playwright-to-run-unit-tests) — A comparison of Playwright’s new test runner versus ‘traditional’ approaches like Jest and Mocha. 

Patrick Kerschbaum   

▶[Let's Code Skifree with JavaScript and Kaboom.js](https://www.youtube.com/watch?v=u5aD3lHrAaQ) — Ania is back with one of her usual fantastic screencasts recreating [a game](https://en.wikipedia.org/wiki/SkiFree) I spent a lot of time on at school in the 90s. _(Though it's not_ quite _as old as Ania suggests.._ 😅_)_ 

Ania Kubów   

[Don’t Let Your Issue Tracker Be a Four-Letter Word. Use Shortcut](https://shortcut.com/?utm_source=cooperJSWeekly&utm_medium=spon_nl&utm_campaign=prospecting&utm_content=fourletter) — The best issue tracking software is one that software developers are actually happy to use. Try it for free today. 

Shortcut (formerly Clubhouse.io) sponsor   

[Alternatives to Installing npm Packages Globally](https://2ality.com/2022/06/global-npm-install-alternatives.html) — A topic often prone to tripping folks up. 

Dr. Axel Rauschmayer   

[Random Notes Around Service Workers Development and Testing](https://mmazzarolo.com/blog/2022-06-18-service-workers-tips-and-tricks/) — _“a bunch of tips and tricks I learned through the years around service workers”_ 

Matteo Mazzarolo   

[Precise Timing with the Web Animations API](https://www.smashingmagazine.com/2022/06/precise-timing-web-animations-api/) — Working with timers in JavaScript can quickly get complicated. Kirill takes a look at how the Web Animations API could eliminate the need for such timers in certain cases. 

Kirill Myshkin   

[Observability for Your Jest Tests](https://buildkite.com/test-analytics?utm_campaign=CPress&utm_source=ppc&utm_medium=JavaScript-Weekly&utm_term=Test-Analytics) 

Buildkite Test Analytics sponsor   

[How to Create a Vanilla JS Gantt Chart](https://www.smashingmagazine.com/2022/06/vanilla-javascript-gantt-chart-part-2/) — The [first part](https://www.smashingmagazine.com/2021/08/interactive-gantt-chart-component-vanilla-javascript/) came out in August last year if you want to catch up. 

Anna Prenzel   

[Sponsoring Dependencies: The Next Step in Open Source Sustainability](https://humanwhocodes.com/blog/2022/06/sponsoring-dependencies-open-source-sustainability/) 
Nicholas C Zakas   

▶[Discussing the Art of Authoring Browser Extensions with Tim Leland](https://syntax.fm/) 
Syntax Podcast podcast  

🛠 Code & Tools  

[Puppeteer 15.0: Control Headless Chrome from Node](https://pptr.dev/) — [Playwright](https://github.com/microsoft/playwright) has picked up a lot of the browser control market in recent years, but the popular Chrome-oriented Puppeteer remains a fantastic option if you don’t need to support multiple browsers. It now uses Chromium 103 and supports Node 18. 

Google   

[Deep Persistent Proxy Objects: Automatically Persist JS Objects in IndexedDB](https://github.com/robtweed/DPP) — Create and maintain objects that automatically back themselves up to IndexedDB behind the scenes, so that if you refresh or restart the app in the browser, the object’s content is automatically restored to its previous state. 

Rob Tweed   

[Tired of Manually Managing Your Content Security Policies?](https://www.feroot.com/domainguard/?utm_campaign=DomainGuard%20Launch&utm_source=Med%5B%E2%80%A6%5Dtter-ad&utm_term=JS-weekly-newsletter&utm_content=DomainGuard) — Meet DomainGuard! DomainGuard gives you customization, automation, and optimization—all in one single Content Security Policy solution. 

Feroot Security sponsor   

[main-thread-scheduling 6.0: Consistently Responsive Apps While Staying on the Main Thread](https://github.com/astoilkov/main-thread-scheduling) — An alternative to the Web Workers approach that uses the approach of stopping tasks executing when the user interacts with the UI. Interesting ideas here. 

Antonio Stoilkov   

[React Joyride: Create Guided Tours in Your Apps](https://react-joyride.com/) — Uses [react-floater](https://github.com/gilbarbara/react-floater) to position and style floating ‘tour guide’ elements. [GitHub repo](https://github.com/gilbarbara/react-joyride). 

Gil Barbara   

[PSD 0.2: Zero-Dependency PSD (Photoshop) Parser](https://webtoon.github.io/psd/) — For both browser and Node.js. [GitHub repo](https://github.com/webtoon/psd). 

webtoon   

[Reactime 14.0: A Chrome Developer Tool for Time Travel Debugging in React Apps](https://github.com/open-source-labs/reactime/releases/tag/v14.0.0) — v14 introduces support for apps using React Router. 

OSLabs  

😍 A lovely splash of paint.. 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/j260uxbzs37m1byx6gyv.jpg)](https://eslint.org/)  

[We're ❤️ing ESLint's All New Homepage](https://eslint.org/) — ESLint is a hugely popular linter for identifying and reporting on patterns in JavaScript and [v8.18.0](https://eslint.org/blog/2022/06/eslint-v8.18.0-released/) has just been released. Even better, though, is their all new Web site forged from several months of work. It’s rather slick and even includes a fantastic photo of Addy Osmani. 

ESLint Project         

Published by [Cooperpress](https://cooperpress.com/) and edited by [Peter Cooper](https://twitter.com/cooperx86) 

'JavaScript' is a trademark of Oracle Corporation in the US
We are not endorsed by or affiliated with Oracle. 

[Change your email address](https://javascriptweekly.com/edit_subscription/*|UID|*) or [stop getting this newsletter](https://javascriptweekly.com/leave/*|UID|*). 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
