From e0cdbaa63c7be34c13c8924ce2860f5216edfeae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C2=A1ke?= <77801554+front42@users.noreply.github.com> Date: Thu, 15 Jan 2026 14:15:16 +0300 Subject: [PATCH 1/2] fix: correct explanation of the algorithm in sort-table solution.md ru --- .../12-sort-table/solution.md | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/2-ui/1-document/07-modifying-document/12-sort-table/solution.md b/2-ui/1-document/07-modifying-document/12-sort-table/solution.md index bfe51303d6..a74f31acaf 100644 --- a/2-ui/1-document/07-modifying-document/12-sort-table/solution.md +++ b/2-ui/1-document/07-modifying-document/12-sort-table/solution.md @@ -1,19 +1,18 @@ Решение короткое, но может показаться немного сложным, поэтому здесь я предоставлю подробные комментарии: - ```js -let sortedRows = Array.from(table.rows) - .slice(1) - .sort((rowA, rowB) => rowA.cells[0].innerHTML > rowB.cells[0].innerHTML ? 1 : -1); +let sortedRows = Array.from(table.tBodies[0].rows) // 1 + .sort((rowA, rowB) => rowA.cells[0].textContent.trim().localeCompare(rowB.cells[0].textContent.trim())); // 2 -table.tBodies[0].append(...sortedRows); +table.tBodies[0].append(...sortedRows); // 3 ``` -1. Получим все ``, как `table.querySelectorAll('tr')`, затем сделаем массив из них, потому что нам понадобятся методы массива. -2. Первый TR (`table.rows[0]`) -- это заголовок таблицы, поэтому мы берём `.slice(1)`. -3. Затем отсортируем их по содержимому в первом `` (по имени). -4. Теперь вставим узлы в правильном порядке `.append(...sortedRows)`. +Пошаговый алгоритм: + +1. Получим все `` из `` в виде массива, потому что нам понадобится метод `sort`. +2. Затем отсортируем их по содержимому в первом `` (по имени). +3. Теперь вставим узлы в правильном порядке `.append(...sortedRows)`. - Таблицы всегда имеют неявный элемент ``, поэтому нам нужно получить его и вставить в него: простой `table.append(...)` потерпит неудачу. +Обратите внимание: нам не нужно их удалять, просто "вставляем их заново", они автоматически покинут старое место. - Обратите внимание: нам не нужно их удалять, просто "вставляем их заново", они автоматически покинут старое место. +Таблицы всегда имеют неявный элемент ``, поэтому нам нужно получить его и вставить в него: простой `table.append(...)` потерпит неудачу. From 549f00c51beabdb1b33b90dd305d69fd5b8e96f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C2=A1ke?= <77801554+front42@users.noreply.github.com> Date: Thu, 15 Jan 2026 14:39:34 +0300 Subject: [PATCH 2/2] feat: update sort-table solution.view index.html --- .../12-sort-table/solution.view/index.html | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/2-ui/1-document/07-modifying-document/12-sort-table/solution.view/index.html b/2-ui/1-document/07-modifying-document/12-sort-table/solution.view/index.html index b47cf85582..91bd84a71f 100644 --- a/2-ui/1-document/07-modifying-document/12-sort-table/solution.view/index.html +++ b/2-ui/1-document/07-modifying-document/12-sort-table/solution.view/index.html @@ -26,10 +26,9 @@