files/en-us/web/api/characterdata/before/index.md
{{APIRef("DOM")}}
The before() method of the {{domxref("CharacterData")}} interface
inserts a set of {{domxref("Node")}} objects and strings
in the children list of the CharacterData's parent, just before the CharacterData node.
Strings are inserted as {{domxref("Text")}} nodes; the string is being passed as argument to the {{domxref("Text/Text", "Text()")}} constructor.
before(...nodes)
nodes
None ({{jsxref("undefined")}}).
HierarchyRequestError {{DOMxRef("DOMException")}}
The before() method allows you to insert new nodes before a
CharacterData node leaving the current node's data unchanged.
const h1TextNode = document.querySelector("h1").firstChild;
h1TextNode.before("h1# ");
h1TextNode.parentElement.childNodes;
// NodeList [#text "h1# ", #text "CharacterData.before()"]
h1TextNode.data;
// "CharacterData.before()"
{{Specifications}}
{{Compat}}