@Insolation

Почему не сортируются строки?

Есть такой скрипт:
static sortRows() {
    const tbody = document.getElementsByTagName('tbody')[0];
    let rows = [];

    for (let i = 0; i < tbody.children.length; i++) {
      rows.push(tbody.children[i]);
    }

    console.log(rows);

    rows.sort((a, b) => {
      return a.innerHTML - b.innerHTML;
    });

    for (let i = 0; i < rows.length; i++) {
      tbody.appendChild(rows[i]);
    }
  }


Он должен отсортировать строки в таблице. Но почему он не срабатывает, я вроде все правильно написал. Может вы видите ошибку?

Весь код:
https://codepen.io/anon/pen/pamygR
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ответы на вопрос 2
Xuxicheta
@Xuxicheta
инженер
Если вы посмотрите мой ответ на ваше предыдущий вопрос, вы там увидите метод String.prototype.localeCompare.
Почитайте про него.
https://developer.mozilla.org/ru/docs/Web/JavaScri...
А так 'two' - 'one' будет NaN, js приводит содержимое строк к типу number и вычитает что получилось, т.е. NaN - NaN = NaN
Ответ написан
@Coder321
sort((item1, item1)=>{
if (item1 < item1)
  return -1
if ( item1 > item1)
  return 1
return 0
})
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Biganto Москва
от 130 000 до 130 000 руб.
от 2 500 до 4 000 usd.
HTML Academy Москва
от 85 000 до 100 000 руб.
15 авг. 2018, в 23:38
300 руб./за проект
15 авг. 2018, в 22:39
60000 руб./за проект
15 авг. 2018, в 21:18
30000 руб./за проект