2025
19 featuresThe <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 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\\]".
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.
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.
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 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.
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 navigator.wakeLock.request("screen") API prevents the device's screen from dimming or being turned off.
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 contenteditable="plaintext-only" global HTML attribute allows the user to edit the content of an element, but prevents rich-text formatting.
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
11 featuresThe ::target-text pseudo-element allows you to style text highlighted by a URL text fragment such as #:~:text=snippet.
Garbage collection tracks references for better memory management with garbage-collected languages running in WebAssmbly.
The @page CSS at-rule sets the page-specific dimensions and margins for content such as printed documents, ebooks, or slides.
Tail call optimization discards a caller frame and replaces the call with a jump instruction.
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 scrollbar-gutter CSS property reserves space for the scrollbar, preventing unwanted layout changes as the scrollbar appears and disappears.
The scrollbar-width CSS property sets the width of the scrollbar.
The drawingBufferColorSpace and unpackColorSpace properties of WebGLRenderingContext sets the color representation for the buffer and imported textures, such as "srgb" or "display-p3".
The drawingBufferColorSpace and unpackColorSpace properties of WebGL2RenderingContext sets the color representation for the buffer and imported textures, such as "srgb" or "display-p3".
The fetch() priority option and the fetchpriority HTML attribute give hints to the browser about which requests to do before other requests of the same type.