JS властивість Element.lastElementChild


Загальний опис

lastElementChild є властивістю об'єкта Element в JavaScript, яка повертає останній дочірній елемент вузла або null, якщо дочірніх елементів немає. Ця властивість корисна для маніпулювання та доступу до останнього дочірнього елемента вузла без необхідності ітерації по всіх дочірніх вузлах. Вона широко використовується в DOM-маніпуляціях, роботі з веб-сторінками та створенні динамічного контенту.

Використання lastElementChild є досить простим і прямолінійним. Розглянемо приклад з HTML-розміткою:

<div id="parent">
  <p>Перший параграф</p>
  <span>Текстовий вузол</span>
  <div>Дочірній div</div>
</div>

Щоб отримати доступ до останнього дочірнього елемента div з id parent, можна використати наступний JavaScript-код:

const parentElement = document.getElementById('parent');
const lastChild = parentElement.lastElementChild;
console.log(lastChild); // <div>Дочірній div</div>

У цьому прикладі lastElementChild повертає останній дочірній елемент <div> вузла parentElement.

lastElementChild є зручним способом маніпулювання або доступу до останнього дочірнього елемента без необхідності ітерації по всіх дочірніх вузлах. Наприклад, можна змінити стиль або вміст останнього дочірнього елемента:

lastChild.style.color = 'red'; // Змінює колір тексту останнього дочірнього елемента на червоний
lastChild.textContent = 'Новий текст'; // Змінює текстовий вміст останнього дочірнього елемента

Важливо зазначити, що lastElementChild ігнорує текстові вузли та інші типи вузлів, які не є елементами. У прикладі вище текстовий вузол <span>Текстовий вузол</span> не враховується при визначенні lastElementChild.

Якщо вузол не має дочірніх елементів, lastElementChild поверне null. Це можна перевірити за допомогою умовного оператора:

const emptyElement = document.createElement('div');
if (emptyElement.lastElementChild) {
  // Код для обробки останнього дочірнього елемента
} else {
  console.log('Немає дочірніх елементів');
}

lastElementChild часто використовується в поєднанні з іншими DOM-методами та властивостями, такими як firstElementChild, children, childNodes та parentElement. Разом вони забезпечують потужні інструменти для маніпулювання та доступу до вузлів DOM-дерева.

Загалом, lastElementChild є корисною властивістю для роботи з DOM-деревом в JavaScript, особливо при необхідності швидкого доступу або модифікації останнього дочірнього елемента вузла без ітерації по всіх дочірніх вузлах.

автор: Bond

Порада

Перевіряйте, чи lastElementChild не дорівнює null перед виконанням операцій з отриманим елементом. Якщо у вузла немає дочірніх елементів, властивість поверне null, і виконання операцій на null може призвести до помилок.

автор: Bond
Порада

Пам'ятайте, що lastElementChild повертає лише елементи-нащадки вузла. Якщо у вузла є текстові вузли або інші типи вузлів, вони будуть проігноровані. Якщо вам потрібно отримати останній вузол будь-якого типу, використовуйте властивість lastChild.

автор: Bond
Порада

Використовуйте lastElementChild у поєднанні з іншими DOM-методами та властивостями для більш складних маніпуляцій з елементами. Наприклад, ви можете отримати всіх дочірніх елементів за допомогою children, а потім виконати операції з останнім елементом, використовуючи lastElementChild.

автор: Bond

Синтаксис

Element.lastElementChild

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
2 3.5 4 10 12 9
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 3

Приклади

+ запропонувати свій приклад у пісочниці

У цьому прикладі ми використовуємо властивість lastElementChild, щоб отримати останній елемент списку <ul>. Потім ми виводимо текстовий вміст цього елемента за допомогою властивості textContent. Цей підхід дозволяє нам легко отримувати доступ до останнього елемента списку без необхідності вручну обчислювати його позицію.

HTML

<ul>
    <li>перший пункт</li>
    <li>другий пункт</li>
</ul>

JS

// Отримання останнього елемента списку <ul> за допомогою властивості lastElementChild
const ulList = document.querySelector("ul");
const lastElement = ulList.lastElementChild;

// Виведення текстового вмісту останнього елемента списку
console.log("Текст останнього елемента списку:", lastElement.textContent);
автор: Bond

У цьому прикладі ми спочатку знаходимо контейнер з класом "container", а потім отримуємо його останній дочірній елемент за допомогою lastElementChild. Після цього ми додаємо стилі до цього останнього елемента, змінюючи його фоновий колір і встановлюючи відступи. Використання lastElementChild дозволяє нам легко маніпулювати останнім елементом в заданому контейнері, що є особливо корисним при динамічному оновленні вмісту веб-сторінки.

HTML

<div class="container">
    <p>Перший елемент</p>
    <p>Останній — дістане тло і відступи</p>
</div>

JS

const container = document.querySelector('.container');
const lastElementInContainer = container.lastElementChild;

lastElementInContainer.style.backgroundColor = '#f0f0f0';
lastElementInContainer.style.padding = '10px';
автор: Bond

У цьому прикладі ми маємо контейнер div з ідентифікатором container, який містить кілька дочірніх елементів, включно з текстовим вузлом. При натисканні на кнопку "Змінити останній дочірній елемент" виконується функція changeLastChild().

Ця функція використовує властивість lastElementChild для отримання останнього дочірнього елемента контейнера. Якщо останній дочірній елемент існує, його текстовий вміст змінюється на "Новий текст для останнього дочірнього елемента", і результат відображається в елементі <p> з ідентифікатором output. Якщо дочірніх елементів немає, виводиться відповідне повідомлення.

автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід