Hopp til hovedinnhold

<ForrigeUke uke="7" år="2026" />

Publisert:17. februar
Skrevet av:Joachim Maksim

Dette var uken for skriveleif ✍️, illusjoner 🐮 og doom-scrolling📱 — og 749 ting som skjedde i frontend-verdenen

«<ForrigeUke /> er en artikkelserie som oppsummerer hva som skjedde i frontend-verden i uken som var.»
Bilde av jordkloden fra verdensrommet
Bilde publisert av NASA på Unsplash

TypeScript 6.0 Beta 🌐

Forrige uke annonserte Microsoft TypeScript 6.0 Beta. Det unike med 6.0-versjonen er at det er den siste som vil bli skrevet i JavaScript. TypeScript 7.0 blir en komplett omskriving i Go, noe som ifølge Microsoft vil kunne gi opptil 10x raskere kompilering 🚀

Målet med versjon 6 er at det skal gi en glattere overgang til den såkalte "native" 7.0-versjonen. Med det kommer en rekke endringer i TypeScripts standardinstillinger.

strict: true ☝️😠

En viktig endring er at strict nå er satt til true som standard. Det betyr at nye prosjekter automatisk får strengere typesjekking uten å måtte konfigurere dette eksplisitt. Microsoft skriver at det er voksende apetitt for strengere typesjekking, og at fremtidige endringer vil gjenspeile hvordan TypeScript-økosystemet faktisk brukes i dag. Kan dette tolkes som et signal om at strict-mode vil bli påkrevd i fremtidige Typescript-versjoner? Hvis jeg var eier av et TypeScript-prosjekt uten strict-mode, hadde jeg iallefall vurdert å skru det på nå.

Raskere innlasting av globale typer 🏎️

Type-definisjoner for mange populære JavaScript-biblioteker publiseres som egne @types-pakker. For eksempel leveres typene for Node.js gjennom @types/node. Enkelte av disse pakkene legger til deklarasjoner i globalt scope slik at vi kan bruke de uten eksplisitte importer, som process i Node eller describe() i Jest.

For å muliggjøre typesjekking av slike globale variabler og funksjoner har TypeScript frem til nå automatisk lastet inn alle @types-pakker som finnes i node_modules. I moderne prosjekter kan dette innebære hundrevis eller tusenvis av deklarasjonsfiler, noe som gjør TypeScript-kompileringen unødvendig tung og tidkrevende.

I TypeScript 6.0 endres standardoppførselen: dersom types-feltet i tsconfig.json ikke er spesifisert, behandles det som en tom liste. Det betyr at ingen globale type-definisjoner lastes inn automatisk. I praksis må man derfor eksplisitt angi hvilke globale @types-pakker prosjektet faktisk trenger, for eksempel "types": ["node", "jest"].

Denne endringen gjør typeinnlasting mer eksplisitt og kan gi betydelige forbedringer i byggetid, særlig i større prosjekter og monorepoer!

Få oversikt over hvordan den nye TypeScript-versjonen vil påvirke prosjektet ditt med innlegget til Daniel Rosenwasser 👇

devblogs.microsoft.com

Announcing TypeScript 6.0 Beta - TypeScript

Today we are announcing the beta release of TypeScript 6.0! To get started using the beta, you can get it through npm with the following ...

Interop 2025 er ferdig. Interop 2026 🔜

Interop (kort for interoperabilitet) er et årlig samarbeid mellom de største nettleserleverandørene for å forbedre kompatibiliteten på tvers av nettlesere. Teamene bak Chrome, Firefox, Safari og Edge blir enige om felles satsingsområder og bruker delte testsett for å sikre at web-funksjonalitet som APIer og CSS-regler oppfører seg likt i alle nettlesere.

Alle de store nettlesermotorene gjorde betydelig fremgang i 2025. Ett av fjorårets fokusområder som er verdt å trekke frem er anchor positioning, som hjelper oss med å posisjonere elementer relativt til andre elementer, og passer perfekt til tooltips, popovers og dropdown-menyer. Før anchor positioning måtte man bruke position og enten inset eller transform til å plassere elementer der man ønsket. Men så fort brukeren bladde på siden eller zoomet inn, kunne elementet havne utenfor viewporten. Dette kunne bare løses ved å bruke JavaScript til å sjekke om elementet er synlig, og korrigere posisjonen deretter. Anchor positioning gjør dette enkelt, og helt uten JavaScript! Derfor er det deilig at det nå vil oppføre seg likt i forskjellige nettlesere.

I 2026 fortsetter Interop-samarbeidet med 20 fokusområder, og anchor positioning er med igjen som et carry-over fra 2025 der målet nå er å finpusse spesifikasjonen, rydde opp i tester og gjøre funksjonaliteten enda mer pålitelig i alle nettlesere. På CSS-fronten vil det blant mine favoritter bli lagt fokus på attr()-funksjonen som kan lese verdien av attributter på HTML-elementer, og ::highlight-pseudo-elementet som lar oss fremheve tekst uten eksplisitte <em>-tags i DOMen. I tillegg kommer en spennende oppdatering av fetch()-APIet, som snart vil kunne ta inn en ReadableStream request body, og dermed støtte opplasting av store filer uten å måtte lese alt inn i minnet først.

Det er betryggende å se at konkurrerende selskaper klarer å samarbeide for å gjøre livet et ørlite grann enklere for oss utviklere. Les om alle fokusområdene i Interop 2026 her 👇

webkit.org

Announcing Interop 2026

Exciting news for web developers, designers, and browser enthusiasts alike — Interop 2026 is here, continuing the mission of improving cross-browser ...

Det var alt for denne gang, ha en fin uke 👋

Skrevet av