JavaScript

Смотрел я тут учебный курс Евгения Попова по javascript. Удивил он (Попов) в паре мест...

Там у него примерно такие утверждения:
"В Javascript всего два метода отбора элементов. А если нужно отобрать элемент который содержит какой-то класс придется в цикле перебрать все тэги страницы, внутри этого цикла создать еще один цикл, который будет перебирать конкретный тэг и его свойства, если найдет свойство класс должен будет проверить соответствует ли этот класс тому что мы указали, и если соответствует, то поместить этот элемент в итоговый массив... "

Однако по справочникам выяснилось что есть таки в яваскрипте метод getElementsByClassName();
Как это понимать? Попов не очень разбирается в теме по которой делает курсы или же это какая-то новейшая спецификация яваскрипта?
Zafar
Zafar
65 863
чему научили его, тому он и учит) да и не забывайте, что он дает сааааамый начальный уровень. для тех, кто js знает только на уровне написания самого слова
VB
Vadim Bassarabciuc
85 946
Лучший ответ
Насколько я понял он тупо переводит чужие иностранные курсы на русский язык, сам он ни в чем не разбирается, он только продавать умеет.
Андрей Ч.
Андрей Ч.
39 182
Эта функция не кроссбраузерна.
В IE старых версий, вроде, ее вообще нет (погуглите, чтобы узнать точно).

Нужно либо писать свой кроссбраузерный велосипед, либо использовать кроссбраузерную библиотеку вроде jQuery. Во втором случае все равно нет гарантии, что получится достаточно кроссбраузерно - не пробовал.
Слушайте ребята никогда не говорите плохо о тех людях которые вас чему-то учат, каждый человек может ошибиться и это не потеря авторитета а лишь жизненный урок или другая точка зрения, если-бы не было людей которые нас двигали к развитию вы бы до сих пор бегали за мамонтом с палками, это конечно про мамонтов сказка, за динозаврами бы бегали..
getElementsByClassName(); возвращает HTMLCollection, его все таки придется прогонять через цикл. Ну или обращаться к первому элементу так:
var elem = document.getElementsByClassName("my_super_puper_class")[0];
Но проще использовать вот этот метод:
var elem = document.querySelector(".my_super_puper_class"); Этот метод сразу возвращает HTMLElement, то есть ничего перебирать не надо.
Zafar Благодарю. Полезное замечание
У Попова не яваскрипту нужно учиться, а продажам в сети)
Он так понимает