New to JavaScript — ES2022

New to JavaScript — ES2022

In this episode of Syntax, Scott and Wes talk about all the new stuff in ES2022 — what it is, why you might need it, and how to use it. Sanity - Sponsor Sanity.io is a real-time headless CMS with a fully customizable Content Studio built in React. Get a Sanity powered site up and running in minutes at sanity.io/create. Get an awesome supercharged free developer plan on sanity.io/syntax. LogRocket - Sponsor LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It’s an exception tracker, a session re-player and a performance monitor. Get 14 days free at logrocket.com/syntax. Auth0 - Sponsor Auth0 is the easiest way for developers to add authentication and secure their applications. They provides features like user management, multi-factor authentication, and you can even enable users to login with device biometrics with something like their fingerprint. Not to mention, Auth0 has SDKs for your favorite frameworks like React, Next.js, and Node/Express. Make sure to sign up for a free account and give Auth0 a try with the link below: https://a0.to/syntax. Show Notes 04:50 - Regex indicies New d flag in a regex https://regex101.com/ This will tell you the indexes (indicies) of the regex matches Handy if you need to highlight or replaces matches in a string We can ask for the start and end positions of each matched capture group 07:16 - Class updates Private fields Properties and Methods to be kept private Prefix them with a # =Helpful for internal state and methods which should not be accessed directly or at all by external In React how we have __INTERNTAL_NEVER USE THIS class ColorButton extends HTMLElement { // All fields are public by default color = "red" // Private fields start with a #, can only be changed from inside the class #clicked = false } const button = new ColorButton() // Public fields can be accessed and changed by anyone button.color = "blue" // SyntaxError here console.log(button.#clicked) // Cannot be read from outside button.#clicked = true // Cannot be assigned a value from outside Getters and setters introduced in es5 https://www.w3schools.com/js/js_object_accessors.asp class Person { #hobbies = ['computers'] get #hobbiesGetter() { return this.#hobbies } #getHobbies() { return this.#hobbies } getHobbiesPublic() { return this.#hobbies } } const scott = new Person(); scott.#getHobbies(); // doesn't work scott.getHobbiesPublic(); // works 09:07 - Class fields This may seem super old because we have been polyfilling it forever Right now if you want an instance field on a class, you need to declare it in the constructor Now we can just declare them inside the class 10:36 - Static fields and methods As above can also be static with the static keyboard Works for methods too Explain what a static method is 13:17 - Top level await So handy in modules. Need to pull in some data? Simple. 15:19 - Ergonomic brand checks for private fields Used for checking if a private field on a class exists using the in keyword 16:00 - .at() method Strings and arrays - we can use square brackets to reference items of the array Super handy for grabbing the last item of an array // 🔥 New .at() method on arrays and strings const toppings = ['pepperoni', 'cheese', 'mushrooms']; // The old way to grab the last item toppings[toppings.length - 1]; // mushrooms // using .at() method with a negative index toppings.at(-1); // mushrooms // works with any index toppings.at(0); // pepperoni toppings.at(-2); // cheese // and with strings! 'Meeting Room: B'.at(-1) // B Why not use array[-1]? We used to use slice(-1) What about indexOf? 21:34 - Handy hasOwn method https://github.com/tc39/proposal-accessible-object-hasownproperty 24:51 - Class static block A static block allows you to run code before creating an optional static property during initialization https://github.com/tc39/proposal-class-static-block Links https://github.com/tc39/proposals/blob/master/finished-proposals.md ××× SIIIIICK ××× PIIIICKS ××× Scott: Ultraloq Smart Lock Wes: Magnatiles Shameless Plugs Scott: Web Components Course - Sign up for the year and save 25%! Wes: All Courses - Use the coupon code ‘Syntax’ for $10 off! Tweet us your tasty treats! Scott’s Instagram LevelUpTutorials Instagram Wes’ Instagram Wes’ Twitter Wes’ Facebook Scott’s Twitter Make sure to include @SyntaxFM in your tweets

Det här avsnittet är hämtat från ett öppet RSS-flöde och publiceras inte av Podme. Det kan innehålla reklam.

Avsnitt(1025)

1025: The Open Web's second chance (w/ Dan Abramov)

1025: The Open Web's second chance (w/ Dan Abramov)

Dan Abramov joins Scott and Wes to explain AT Protocol, the open standard quietly rebuilding the social web. They get into how it actually works, why it’s way bigger than just Bluesky, and why Dan cal...

29 Juli 1h

1024: Open Models Replace Big AI

1024: Open Models Replace Big AI

A huge week for open models: Inkling (the first big US open-weight model since Gemma 4), Qwen 3.8, and Kimi 3 all dropped. Plus Vue 3.6 RC + Vapor Mode, the slow death of Stack Overflow, a decoy font ...

27 Juli 1h 7min

1023: Mosh, Caddy & Tailscale: A Remote Dev Deep Dive

1023: Mosh, Caddy & Tailscale: A Remote Dev Deep Dive

Running your dev process off your main machine doesn’t have to mean the cloud. Scott and Wes break down how to host projects on a box you can reach from any device, close your laptop mid-build, and ke...

22 Juli 48min

1022: Bun re-written in Rust, Zig team big mad

1022: Bun re-written in Rust, Zig team big mad

CJ and Scott break down the biggest week in web dev: TypeScript 7 ships with a 10x-faster native port, Bun gets rewritten in Rust (much to the Zig team’s dismay), and Better Auth joins Vercel. Plus GP...

20 Juli 1h 15min

1021: We got addicted to an AI model we can't talk about

1021: We got addicted to an AI model we can't talk about

Dax Raad, co-founder of OpenCode, joins Scott and Wes to talk remote dev servers, OpenCode 2.0, and why his team is “addicted” to AI models they’re not even allowed to name yet. Show Notes 00:00 In...

15 Juli 51min

1020: Do You Read The Code?

1020: Do You Read The Code?

Auto-accept on, brain off? We’re getting into whether anyone actually reads the code they ship anymore — then it’s HTTP’s first new method in 16 years (meet QUERY) and OpenAI’s compute-hungry “Sol Ult...

13 Juli 1h 27min

1019: LGTM, Ship It: The AI Code Review Problem

1019: LGTM, Ship It: The AI Code Review Problem

This episode tackles the growing pains of AI-assisted development, from the struggle of reviewing thousands of lines of agent-generated code to the mounting technical debt when teams merge PRs without...

8 Juli 39min

1018: Google fires Workspace CLI Creator

1018: Google fires Workspace CLI Creator

Google fires the engineer behind its Workspace CLI tool, OpenAI previews GPT-5.6 with three new model tiers, and Astro 7 lands with a full Rust rewrite. Plus: Coinbase cuts token costs with smarter ro...

6 Juli 1h 17min

Populärt inom Politik & nyheter

svenska-fall
p3-krim
rss-krimstad
aftonbladet-daily
aftonbladet-krim
flashback-forever
rss-sanning-konsekvens
mannen-utan-spar
motiv
tv4-nyheterna-story
rss-frandfors-horna
rss-aftonbladet-krim
spar
rss-krimreportrarna
rss-vad-fan-hande
de-fyras-gang
politiken
olyckan-inifran
rss-flodet
rss-mord-forsvinnanden