The Element.before() method inserts a set of Node objects or strings in the children list of this Element's parent, just before this Element. Strings are inserted as equivalent Text nodes.
before(param1)
before(param1, param2)
before(param1, param2, /* …, */ paramN)param1, …, paramNA set of Node objects or strings to insert.
None (undefined).
HierarchyRequestError DOMExceptionThrown when the node cannot be inserted at the specified point in the hierarchy.
let container = document.createElement("div");
let p = document.createElement("p");
container.appendChild(p);
let span = document.createElement("span");
p.before(span);
console.log(container.outerHTML);
// "<div><span></span><p></p></div>"let container = document.createElement("div");
let p = document.createElement("p");
container.appendChild(p);
p.before("Text");
console.log(container.outerHTML);
// "<div>Text<p></p></div>"let container = document.createElement("div");
let p = document.createElement("p");
container.appendChild(p);
let span = document.createElement("span");
p.before(span, "Text");
console.log(container.outerHTML);
// "<div><span></span>Text<p></p></div>"