HTML: <img src="#" name="prm1"> <img src="#" name="prm7"> <img src="#" name="prm15"> <img src="#" name="prm3"> <img src="#" name="prm5"> <img src="#" name="prm10"> <img src="#" name="prm11"> <img src="#" name="prm4"> <img src="#" name="prm9"> Подскажите, как можно получить массив элементов чтоб в этом массиве были значения заключенные в "name" и затем обращаться к этим элементам по значению имени? Т.е. по сути у меня должен получиться массив [prm1, prm7, prm15, prm3, prm5, prm10, prm11, prm4, prm9]
Если вам нужен массив значений атрибута name, которого никогда не было у элемента <img>: Код (Javascript): const names = Array.from(document.querySelectorAll('img')).map(el => el.name);
Ппц js читерский язык) Я бы перебирал элементы в forEach(), а тут всё в одну строку... Еще учиться и учиться)
Благодарю! --- Добавлено --- Всё ни как не мог начать хоть как-то изучать JS и тут решил озадачить себя решением одной задачи Буду так потихоньку ковырять и изучать. --- Добавлено --- Это верно, но HTML прощает
Это с чего вдруг? У него решения более затратное по ресурсам. map это для реактивности. В обычном js его практически не используют. Плюс мое решение короче
твоё решение выводит элементы в консоль, а нужно сложить их в массив. для этого в предыдущей строке нужно объявить переменную массивом и пушить в массив элементы внутри функции) а если мы заговорили о ресурсах, то деревянный смартфон, который почувствует разницу в ресурсах не поддерживает такой синтаксис функций)
Ну так то да. Только в реальной жизни никто просто так элементы не выбирает над ними сразу что то делают как раз внутри foreach)
@nospiou, @TeslaFeo, вот вы нашли тему для обсуждения Если бы в заголовке вопроса было написано "Конкурс красоты кода" или "У кого короче" (я про код), то тогда другое дело. Был вопрос, я машинально написал ответ в том синтаксисе, который использую сегодня. Вся песня. Кстати, о "короче": Код (Javascript): const names = [...document.querySelectorAll('img')].map(el => el.name);