Задать вопрос
villiwalla
@villiwalla
HTML-верстка

Почему every и some is not function, если массив с элементами dom?

function (id) {
          var tr = document.querySelectorAll('#selected-element table tr');  // [tr, tr, tr]

          tr.some(function (elem, i, arr) {
              return elem.dataset.id === id;
          });
};

// Uncaught TypeError: tr.some is not a function
  • Вопрос задан
  • 356 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
Krasnodar_etc
@Krasnodar_etc
fundraiseup
Потому что querySelectorAll на самом деле возвращает не совсем массив

Так сработает:
var tr = Array.from( document.querySelectorAll('div') );
Ответ написан
Комментировать
SnaIP
@SnaIP
Front-end разработчик
Если вы напишите так __proto__ будет ссылаться на Array, то есть возьмет методы из прототипа Array
var tr = [...document.querySelectorAll('div')]

Сейчас __proto__ ссылается на NodeList посмотрите в консоли
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы