JavaScript’s Element.prepend() method inserts a set of Node or string objects before the first child of the Element.

Syntax

Element.prepend(parameter1)
Element.prepend(parameter1, parameter2, /* … , */ parameterN)

Parameters

One or more Node or string objects.

Return value

The prepend() method does not have a return value, which means that the method implicitly returns undefined.

Exceptions

HierarchyRequestError DOMException

Thrown when the node cannot be inserted at the specified point in the hierarchy.

Examples

Here are some examples of using the JavaScript prepend() method.

Prepending an element

Suppose we have the following unordered list and we would like to add more languages to the beginning of the list:

<ul id="list">
 <li>Python</li>
</ul>

What should we do?

Well, we should create more li elements and prepend them to the ul element:

let list = document.getElementById('list');
let languages = ['JavaScript', 'C#', 'Java'];
let nodes = languages.map(language => {
 let li = document.createElement('li');
 li.textContent = language;
 return li;
});
list.prepend(...nodes);

Now our HTML looks like this:

<ul id="list">
 <li>JavaScript</li>
 <li>C#</li>
 <li>Java</li>
 <li>Python</li>
</ul>

Here is how our HTML looks like in the browser:

  • JavaScript
  • C#
  • Java
  • Python

So, what did we do?

First we used the getElementById() method to select the ul element by its id. Then we declared an array of programming languages. For each language, we created a new li element and set the element’s textContent. Finally, we used the spread operator (...) to expand the array of li elements and prepended the elements to the ul element.

Prepending text

Now we would like to prepend some text to the first li element in our list of programming languages. We can do that by selecting the li element with the querySelector() method and using the prepend() method:

let first = document.querySelector('#list li:first-child');
first.prepend('The number one language is ');

Here is our HTML after the changes:

<ul id="list">
 <li>The number one language is JavaScript</li>
 <li>C#</li>
 <li>Java</li>
 <li>Python</li>
</ul>

Browser compatibility

Chrome
Edge
Firefox
Internet Explorer
Opera
Safari
Chrome (Android)
Firefox (Android)
Opera (Android)
Safari (iOS)
Samsung Internet
WebView (Android)
prepend() 54 17 49 41 10 54 49 41 10 6.0 54

See also