2025
23 featuresThe URLPattern API creates patterns that can be matched against URLs or URL components.
The Document.parseHTMLUnsafe() static method parses HTML into a DOM tree, much like the setHTMLUnsafe() DOM method inserts HTML into an existing tree. No sanitization applies, so never call it with user-provided strings.
The content-visibility CSS property delays rendering an element, including layout and painting, until it is needed.
The Uint8Array.fromBase64() static method and the toBase64() and setFromBase64() instance methods convert to and from base64 strings. Similarly, the Uint8Array.fromHex() static method and the toHex() and setFromHex() instance methods convert to and from hex strings.
The <input type="file" webkitdirectory> HTML element shows a file picker from which users can choose a folder to upload with the form.
The window.getSelection().getComposedRanges() method returns ranges that represent the current user selection, even if the selection spans across shadow tree boundaries.
The abs() and sign() CSS functions compute the absolute value or the sign of the input.
When caught, an exception is reified into an exception reference, a value of the new type exnref.
The requestClose() method of a <dialog> HTML element closes the dialog, firing a cancel event first, which listeners can use to prevent the dialog from closing. This differs from the close() method, which only fires the non-cancelable close event.
The EXT_texture_compression_rgtc extension for WebGL 1.0 and 2.0 contexts adds RGTC compressed texture formats. RGTC is a block-based texture compression format suited for unsigned and signed red and red-green textures. Also known as Red-Green Texture Compression.
The print-color-adjust CSS property sets whether styles of printed pages should be adjusted to use less ink, in cases such as light text on a dark background.
The RegExp.escape() static method takes a string and replaces any characters that are potentially special characters of a regular expression with equivalent escape sequences. For example, RegExp.escape("[abc]") returns "\\[abc\\]".
Module import … with { type: "json" } statements load JSON data. Also known as JSON module scripts.
Float16Array is a typed array of 16-bit floating point numbers.
The Atomics.pause() static method gives a hint to the CPU that the code calling the method is in a short-duration wait for shared memory, known as spinning or a spinlock.
To serialize and parse JSON in a lossless way, JSON.stringify() handles rawJSON values and JSON.parse()'s reviver callback takes a source context parameter.
The Iterator object is an abstract base for objects that implement the iterator protocol. It provides methods common to built-in iterators, such as filter(), find(), map(), and reduce(). You can also use the static method Iterator.from() to convert an existing iterable into an Iterator.
The navigator.wakeLock.request("screen") API prevents the device's screen from dimming or being turned off.
The ClipboardItem.supports() static method checks if the browser supports writing data types such as "image/svg+xml" or other custom formats to the system clipboard.
The contenteditable="plaintext-only" global HTML attribute allows the user to edit the content of an element, but prevents rich-text formatting.
The Intl.DurationFormat API creates a locale-aware formatter that turns an object representing a duration (such as days, hours, and minutes) into a string.
The Promise.try() static method returns a promise that takes a callback of any kind (returns or throws, synchronously or asynchronously) and wraps its result in a Promise.
2024
7 featuresGarbage collection tracks references for better memory management with garbage-collected languages running in WebAssmbly.
Tail call optimization discards a caller frame and replaces the call with a jump instruction.
The @page CSS at-rule sets the page-specific dimensions and margins for content such as printed documents, ebooks, or slides.
The ruby-align CSS property sets the spacing and alignment of ruby annotation text when it does not fill its available space.
The ruby-position CSS property sets the position of a ruby annotation in relation to its base text. Annotations can display over, under, or interleaved with the base text.
The ::target-text pseudo-element allows you to style text highlighted by a URL text fragment such as #:~:text=snippet.
The scrollbar-gutter CSS property reserves space for the scrollbar, preventing unwanted layout changes as the scrollbar appears and disappears.