Element.append()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
El método Element.append()
inserta un conjunto de objetos Node
u objetos de tipo cadena
después del último hijo de Element
. Los objetos de tipo cadena se insertan
como nodos Text
equivalentes.
Diferencias respecto a Node.appendChild()
:
-
Element.append()
permite añadir también objetos de tipo cadena, mientras queNode.appendChild()
sólo acepta objetos de tipoNode
. -
Element.append()
no tiene valor de retorno, mientras queNode.appendChild()
devuelve el objetoNode
añadido. -
Element.append()
puede añadir varios nodos y cadenas de texto, mientras queNode.appendChild()
sólo puede añadir un nodo.
Sintaxis
append(param1)
append(param1, param2)
append(param1, param2, /* … ,*/ paramN)
Parámetros
Valor de retorno
Ninguno (undefined
).
Excepciones
HierarchyRequestError
DOMException
-
Se lanza cuando el nodo no puede insertarse en el punto especificado de la jerarquía.
Ejemplos
Añadir un elemento
let div = document.createElement("div");
let p = document.createElement("p");
div.append(p);
console.log(div.childNodes); // NodeList [ <p> ]
Añadir texto
let div = document.createElement("div");
div.append("Algo de texto");
console.log(div.textContent); // "Algo de texto"
Añadir un elemento y texto
let div = document.createElement("div");
let p = document.createElement("p");
div.append("Algo de texto", p);
console.log(div.childNodes); // NodeList [ #text "Algo de texto", <p> ]
El método append no se puede recorrer
El método append()
no está incluido en la sentencia with
. Véase
Symbol.unscopables
para más información.
let div = document.createElement("div");
with (div) {
append("foo");
}
// ReferenceError: append is not defined
Especificaciones
Specification |
---|
DOM Standard # ref-for-dom-parentnode-append① |
Compatibilidad con navegadores
BCD tables only load in the browser