Веб-версияОткрыть в Telegram

Пост🎯 HTML attributes vs DOM properties

6 мая 2025
J
JavaScript
Фотография
нажмите — покажем
🎯 HTML attributes vs DOM properties Разница между атрибутами и свойствами в HTML/DOM может быть запутанной, особенно когда названия совпадают. Кратко: * Атрибут — часть HTML. * Свойство — часть DOM-объекта. Пример: <input value="Hello"> const input = document.querySelector('input'); console.log(input.getAttribute('value')); // "Hello" console.log(input.value); // "Hello" input.value = 'World'; console.log(input.getAttribute('value')); // "Hello" Значение атрибута остаётся неизменным, даже если свойство обновляется в JS. DOM-свойства могут не синхронизироваться с атрибутами после инициализации. 🔹Свойства могут отличаться от атрибутов <input disabled> input.hasAttribute('disabled'); // true input.disabled; // true input.removeAttribute('disabled'); input.disabled; // false Свойство disabled — булево. Атрибут disabled работает как флаг: его наличие имеет значение, не важно, какое значение вы ему присвоили. <input disabled="false"> Это всё равно disabled. Так работает HTML. 🔹Когда использовать атрибуты, а когда свойства? * Используйте атрибуты, когда: * Вам нужно установить начальное значение в HTML. * Вы работаете с HTML-строкой. * Вы хотите сохранить значение при сериализации (например, outerHTML). * Используйте свойства, когда: * Вы работаете с DOM в JS. * Нужно прочитать или изменить текущее состояние элемента. 🔹Иногда стоит быть осторожнее input.setAttribute('value', 'New'); console.log(input.value); // "New" Иногда установка атрибута также влияет на свойство, но не всегда — зависит от элемента и конкретного атрибута/свойства. https://jakearchibald.com/2024/attributes-vs-properties/
6 · 707 ·

Рядом в ленте

JJavaScript🌸 Typed Japanese Для гиков: энтузиасты придумали учить языки через TypeScript. Проект Typed Grammar учит грамматике (например, английского или японского) с помоJJavaScript🖌️ LUME — создание 2D/3D-интерфейсов на HTML. Этот набор веб-компонентов превращает обычные HTML-элементы в полноценные носители графики — от CSS3D-преобразован
это сообщение
JJavaScriptЗаголовок: JavaScript Engineer (Browser Fingerprinting & Security R&D) Формат: Удаленная работа, полный день Зарплата: 80 000 - 180 000 руб. на руки (возможна оJJavaScriptФотография

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем