JavaScript метод Node.removeChild()

Определение и применение

JavaScript метод .removeChild() объекта Node позволяет удалить дочерний узел из дерева DOM.

Поддержка браузерами

Спецификация: dom.spec.whatwg

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьapi.Node.removeChild
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
removeChild✓1✓12✓1✓7✓1.1✓18✓4✓10.1✓1✓1.0✓4.4✓1

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

Метод возвращает удалённый узел.

JavaScript синтаксис

JavaScript
// с сохранением ссылки на удаленный дочерний элемент
const oldChild = node.removeChild(child);

// без сохранения ссылки на удаленный дочерний элемент
node.removeChild(child);

Спецификация

DOM Standard.

Значения параметров

Параметры Node.removeChild()
Параметр Описание
child Дочерний узел, который будет удален из дерева DOM. Обязательный аргумент.

Исключения

Исключения Node.removeChild()
Тип исключения Описание
NotFoundError Возникает, если переданный узел не является непосредственным дочерним узлом данного родителя.
TypeError Возникает, если аргумент не является объектом Node, например передан null.

Пример использования

Удаление и повторная вставка первого пункта

Нажмите ▶, затем Delete first child несколько раз: первый пункт удаляется методом removeChild() и сразу добавляется в конец списка, поэтому пункты циклически сдвигаются.

index.html
HTML
<button data-migration-click-0="">Delete first child</button>
<ul id="first">
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
</ul>
main.js
JavaScript
const firstUl = document.getElementById('first')

function myFunc() {
    const oldChild = firstUl.removeChild(firstUl.firstElementChild) // первый дочерний элемент списка
    firstUl.appendChild(oldChild)
}

// Обработчики кнопок перенесены из HTML для запуска с CSP без inline-скриптов.
document.querySelector('[data-migration-click-0]').addEventListener('click', function () {
    myFunc()
})
document.querySelector('[data-migration-click-0]').removeAttribute('data-migration-click-0')

В этом примере с использованием метода addEventListener() при нажатии на кнопку (HTML элемент <button>) вызываем функцию myFunc(), которая с помощью метода .removeChild() удаляет первый дочерний элемент (свойство firstElementChild) внутри элемента <ul> и сохраняет ссылку на него в переменной.

После этого с помощью метода appendChild() мы добавляем удаленный узел в конец списка дочерних элементов указанного родительского узла (элемент <ul>).