El BOM representa la jerarquía de objetos que controlan el navegador, independientemente del contenido de la página web.
windowEl objeto window es el objeto global principal en el entorno del navegador. Todas las demás propiedades y objetos (incluyendo document, history, console, etc.) son, en última instancia, propiedades de window.
outerHeight: Devuelve la altura de la ventana del navegador, incluyendo barras de herramientas/desplazamiento.outerWidth: Devuelve la anchura de la ventana del navegador, incluyendo barras de herramientas/desplazamiento.pageXOffset: Devuelve los píxeles que el documento actual se ha desplazado (horizontalmente) desde la esquina superior izquierda de la ventana.pageYOffset: Devuelve los píxeles que el documento actual se ha desplazado (verticalmente) desde la esquina superior izquierda de la ventana.screenLeft: Devuelve la coordenada horizontal de la ventana relativa a la pantalla.screenTop: Devuelve la coordenada vertical de la ventana relativa a la pantalla.screenX: Devuelve la coordenada horizontal de la ventana relativa a la pantalla.screenY: Devuelve la coordenada vertical de la ventana relativa a la pantalla.sessionStorage: Permite guardar pares clave/valor en un navegador web. Almacena los datos para una sesión.scrollX: Un alias de pageXOffset.scrollY: Un alias de pageYOffset.self: Devuelve la ventana actual.top: Devuelve la ventana superior del navegador.document (Objeto window.document)Representa la página web cargada en el navegador. Todos los nodos y elementos HTML dentro de la página constituyen el DOM (Document Object Model), que es la interfaz principal para manipular el contenido.
activeElement: Devuelve el elemento actualmente enfocado en el documento.baseURI: Devuelve la URI base absoluta de un documento.body: Establece o devuelve el cuerpo del documento (el elemento <body>).characterSet: Devuelve la codificación de caracteres del documento.cookie: Devuelve todos los pares nombre/valor de las cookies en el documento.defaultView: Devuelve el objeto window asociado con un documento, o null si no hay ninguno disponible.designMode: Controla si el documento completo debe ser editable o no.doctype: Devuelve la Declaración de Tipo de Documento asociada con el documento.documentElement: Devuelve el Elemento Raíz del documento (el elemento <html>).documentURI: Establece o devuelve la ubicación del documento.domain: Devuelve el nombre de dominio del servidor que cargó el documento.embeds: Devuelve una colección de todos los elementos <embed> en el documento.forms: Devuelve una colección de todos los elementos <form> en el documento.head: Devuelve el elemento <head> del documento.images: Devuelve una colección de todos los elementos <img> en el documento.implementation: Devuelve el objeto DOMImplementation que maneja este documento.lastModified: Devuelve la fecha y hora en que el documento fue modificado por última vez.links: Devuelve una colección de todos los elementos <a> y <area> en el documento que tienen un atributo href.readyState: Devuelve el estado (de carga) del documento.referrer: Devuelve la URL del documento que cargó el documento actual.scripts: Devuelve una colección de elementos <script> en el documento.title: Establece o devuelve el título del documento.URL: Devuelve la URL completa del documento HTML.addEventListener(): Adjunta un manejador de eventos al documento.adoptNode(): Adopta un nodo de otro documento.close(): Cierra el flujo de salida previamente abierto con document.open().createAttribute(): Crea un nodo de atributo.createComment(): Crea un nodo de Comentario con el texto especificado.createDocumentFragment(): Crea un nodo DocumentFragment vacío.createElement(): Crea un nodo de Elemento.createEvent(): Crea un nuevo evento.createTextNode(): Crea un nodo de Texto.getElementById(): Devuelve el elemento que tiene el atributo ID con el valor especificado.getElementsByClassName(): Devuelve una HTMLCollection que contiene todos los elementos con el nombre de clase especificado.getElementsByName(): Devuelve una NodeList viva que contiene todos los elementos con el nombre especificado.getElementsByTagName(): Devuelve una HTMLCollection que contiene todos los elementos con el nombre de etiqueta especificado.hasFocus(): Devuelve un valor Booleano indicando si el documento tiene el foco.importNode(): Importa un nodo de otro documento.normalize(): Elimina nodos de Texto vacíos y une nodos adyacentes.open(): Abre un flujo de salida HTML para recopilar la salida de document.write().querySelector(): Devuelve el primer elemento que coincide con un selector CSS especificado en el documento.querySelectorAll(): Devuelve una NodeList estática que contiene todos los elementos que coinciden con un selector CSS especificado en el documento.removeEventListener(): Elimina un manejador de eventos del documento (que ha sido adjuntado con el método addEventListener()).write(): Escribe expresiones HTML o código JavaScript en un documento.writeln(): Igual que write(), pero añade un carácter de nueva línea después de cada declaración.history (Objeto window.history)Proporciona acceso al historial de navegación de la pestaña o marco actual.
length: Devuelve el número de URLs (páginas) en el historial.back(): Carga la URL (página) anterior en el historial.forward(): Carga la URL (página) siguiente en el historial.go(): Carga una URL (página) específica del historial.location (Objeto window.location)Contiene información sobre la URL actual de la página y proporciona métodos para navegar o recargar.
hash: Establece o devuelve la parte del ancla (#) de una URL.host: Establece o devuelve el nombre de host y el número de puerto de una URL.hostname: Establece o devuelve el nombre de host de una URL.href: Establece o devuelve la URL completa.origin: Devuelve el protocolo, el nombre de host y el número de puerto de una URL.pathname: Establece o devuelve la ruta de una URL.port: Establece o devuelve el número de puerto de una URL.protocol: Establece o devuelve el protocolo de una URL.assign(): Carga un nuevo documento.reload(): Recarga el documento actual.replace(): Reemplaza el documento actual por uno nuevo.screen (Objeto window.screen)Contiene información sobre las propiedades de la pantalla del usuario (monitor).
availHeight: Devuelve la altura de la pantalla (excluyendo la Barra de Tareas de Windows).availWidth: Devuelve la anchura de la pantalla (excluyendo la Barra de Tareas de Windows).colorDepth: Devuelve la profundidad de bits de la paleta de colores para mostrar imágenes.height: Devuelve la altura total de la pantalla.pixelDepth: Devuelve la resolución de color (en bits por píxel) de la pantalla.width: Devuelve la anchura total de la pantalla.navigator (Objeto window.navigator)Contiene información sobre el navegador (user-agent), el sistema operativo y las capacidades del cliente.
cookieEnabled: Devuelve true si las cookies del navegador están habilitadas.geolocation: Devuelve un objeto de geolocalización para la ubicación del usuario.language: Devuelve el idioma del navegador.onLine: Devuelve true si el navegador está en línea.console (Objeto window.console)Proporciona acceso a la consola de depuración del navegador, permitiendo registrar mensajes, errores, advertencias, etc.
assert(): Escribe un mensaje de error en la consola si una afirmación es falsa.clear(): Limpia la consola.count(): Registra el número de veces que se ha llamado a esta llamada particular a count().error(): Muestra un mensaje de error en la consola.group(): Crea un nuevo grupo en línea en la consola. Esto indenta los siguientes mensajes de la consola un nivel adicional, hasta que se llama a console.groupEnd().groupCollapsed(): Crea un nuevo grupo en línea en la consola. Sin embargo, el nuevo grupo se crea colapsado. El usuario deberá usar el botón de despliegue para expandirlo.groupEnd(): Sale del grupo en línea actual en la consola.info(): Muestra un mensaje informativo en la consola.log(): Muestra un mensaje en la consola.table(): Muestra datos tabulares como una tabla.time(): Inicia un temporizador (puede rastrear cuánto tiempo tarda una operación).timeEnd(): Detiene un temporizador que fue iniciado previamente por console.time().trace(): Muestra un seguimiento de la pila (stack trace) en la consola.warn(): Muestra un mensaje de advertencia en la consola.