API Catalog

Visualize and analyze the API overlap between standards specifications and type systems within browsers.

Browser information was gathered by traversing the type system within the latest available version of the top browsers. Specification data was gathered by extracting Web IDL definitions from notable web specifications. Note that an API that is shown as detected does not necessarily mean it functions per specification; where the absence of an API under an interface could be due to the browser supporting an API in a different part of the prototype chain. This data is made publicly available to help each browser vendor work toward the goal of a more interoperable web platform. For more information, visit our FAQ page.

APIs by interface

API NameSpecificationsMicrosoft EdgeGoogle ChromeMozilla FirefoxApple Safari
HTMLCollection
@@iterator 
@@toStringTag   
arguments   
caller   
item
length
name
namedItem
MutationObserver
@@toStringTag   
arguments   
caller   
constructor
disconnect
length
name
observe
prototype
takeRecords
MutationRecord
@@toStringTag   
addedNodes
arguments   
attributeName
attributeNamespace
caller   
name
nextSibling
oldValue
previousSibling
removedNodes
target
type
NamedNodeMap
@@iterator 
@@toStringTag   
arguments   
caller   
getNamedItem
getNamedItemNS
item
length
name
removeNamedItem
removeNamedItemNS
setNamedItem
setNamedItemNS
Node
@@toStringTag   
appendChild
arguments   
ATTRIBUTE_NODE
baseURI
caller   
CDATA_SECTION_NODE
childNodes
cloneNode
COMMENT_NODE
compareDocumentPosition
contains
DOCUMENT_FRAGMENT_NODE
DOCUMENT_NODE
DOCUMENT_POSITION_CONTAINED_BY
DOCUMENT_POSITION_CONTAINS
DOCUMENT_POSITION_DISCONNECTED
DOCUMENT_POSITION_FOLLOWING
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
DOCUMENT_POSITION_PRECEDING
DOCUMENT_TYPE_NODE
ELEMENT_NODE
ENTITY_NODE
ENTITY_REFERENCE_NODE
firstChild
getRootNode 
hasChildNodes
insertBefore
isConnected 
isDefaultNamespace
isEqualNode
isSameNode
lastChild
lookupNamespaceURI
lookupPrefix
name
nextSibling
nodeName
nodeType
nodeValue
normalize
NOTATION_NODE
ownerDocument
parentElement
parentNode
previousSibling
PROCESSING_INSTRUCTION_NODE
removeChild
replaceChild
TEXT_NODE
textContent
NodeIterator
@@toStringTag   
arguments   
caller   
detach
filter
name
nextNode
pointerBeforeReferenceNode
previousNode
referenceNode
root
whatToShow
NodeList
@@iterator
@@toStringTag   
arguments   
caller   
entries
item
keys
length
name
values
ProcessingInstruction
@@toStringTag   
arguments   
caller   
name
target
Range
@@toStringTag   
arguments   
caller   
cloneContents
cloneRange
collapse
collapsed
commonAncestorContainer
compareBoundaryPoints
comparePoint
constructor
deleteContents
detach
END_TO_END
END_TO_START
endContainer
endOffset
extractContents
insertNode
intersectsNode
isPointInRange
length
name
prototype
selectNode
selectNodeContents
setEnd
setEndAfter
setEndBefore
setStart
setStartAfter
setStartBefore
START_TO_END
START_TO_START
startContainer
startOffset
surroundContents
ShadowRoot
@@toStringTag   
arguments   
caller   
host  
mode  
name