1. EventTarget.addEventListener()

    The modern standard API for adding DOM event handlers. Introduced in the DOM Level 2 Events spec. Also implies support for `removeEventListener`, the [capture phase](https://dom.spec.whatwg.org/#dom-event-capturing_phase) of DOM event dispatch, as well as the `stopPropagation()` and `preventDefault()` event methods.

  2. classList (DOMTokenList)

    Method of easily manipulating classes on elements, using the `DOMTokenList` object.

  3. Crisp edges/pixelated images

    Scales images with an algorithm that preserves edges and contrast, without smoothing colors or introducing blur. This is intended for images such as pixel art. Official values that accomplish this for the `image-rendering` property are `crisp-edges` and `pixelated`.

  4. :focus-visible CSS pseudo-class

    The `:focus-visible` pseudo-class applies while an element matches the `:focus` pseudo-class, and the UA determines via heuristics that the focus should be specially indicated on the element (typically via a “focus ring”).

  5. :is() CSS pseudo-class

    The `:is()` (formerly `:matches()`, formerly `:any()`) pseudo-class checks whether the element at its position in the outer selector matches any of the selectors in its selector list. It's useful syntactic sugar that allows you to avoid writing out all the combinations manually as separate selectors. The effect is similar to nesting in Sass and most other CSS preprocessors.

  6. selector list argument of :not()

    Selectors Level 3 only allowed `:not()` pseudo-class to accept a single simple selector, which the element must not match any of. Thus, `:not(a, .b, [c])` or `:not(a.b[c])` did not work. Selectors Level 4 allows `:not()` to accept a list of selectors. Thus, `:not(a):not(.b):not([c])` can instead be written as `:not(a, .b, [c])` and `:not(a.b[c])` works as intended.

  7. Datalist element

    Method of setting a list of options for a user to select in a text field, while leaving the ability to enter a custom value.

  8. disabled attribute of the fieldset element

    Allows disabling all of the form control descendants of a fieldset via a `disabled` attribute on the fieldset element itself.

  9. CSS Flexible Box Layout Module

    Method of positioning elements in horizontal or vertical stacks. Support includes all properties prefixed with `flex`, as well as `display: flex`, `display: inline-flex`, `align-content`, `align-items`, `align-self`, `justify-content` and `order`.

  10. HEIF/ISO Base Media File Format

    HEIF (High Efficiency Image File Format) is a standard developed by the Moving Picture Experts Group (MPEG) for storage and sharing of images and image sequences. Can use `.heif` or `.heic` file extensions.

  11. Page Visibility

    JavaScript API for determining whether a document is visible on the display

  12. Permissions API

    High-level JavaScript API for checking and requesting permissions

  13. Permissions Policy

    A security mechanism that allows developers to explicitly enable or disable various powerful browser features for a given site. Similar to [Document Policy](/document-policy).

  14. Promise.prototype.finally

    When the promise is settled, whether fulfilled or rejected, the specified callback function is executed.

  15. Promises

    A promise represents the eventual result of an asynchronous operation.

  16. audiodecoder api: isconfigsupported

  17. audioencoder api: isconfigsupported

  18. event api: istrusted

  19. external api: issearchproviderinstalled

  20. fetchevent api: isreload

  21. filesystementry api: isdirectory

  22. filesystementry api: isfile

  23. htmlelement api: iscontenteditable

  24. htmlimageelement api: ismap

  25. idbindex api: isautolocale

  26. imagedecoder api: istypesupported

  27. inputevent api: iscomposing

  28. issecurecontext api

  29. issecurecontext api: available in workers

  30. keyboardevent api: iscomposing

  31. mediarecorder api: istypesupported

  32. mediasource api: istypesupported

  33. node api: isconnected

  34. node api: isdefaultnamespace

  35. node api: isequalnode

  36. node api: issamenode

  37. node api: issupported

  38. pointerevent api: isprimary

  39. range api: ispointinrange

  40. scheduling api: isinputpending

  41. selection api: iscollapsed

  42. usbdevice api: isochronoustransferin

  43. usbdevice api: isochronoustransferout

  44. videodecoder api: isconfigsupported

  45. videoencoder api: isconfigsupported

  46. xrview api: isfirstpersonobserver

  47. css property: isolation

  48. html element: img: ismap

  49. javascript built-in: isfinite

  50. javascript built-in: isnan