Разработка web-приложений на языке JavaScript.dor_БАК_25-233-Б

Разработка web-приложений на языке JavaScript.dor_БАК_25-233-Б — вариант 2

Просмотрите все вопросы и варианты бесплатно. Правильные ответы скрыты и открываются только после получения доступа.

11 вопросов Вариант 2 Доступ 7 дней
Содержание теста

Вопросы и варианты

Без отметок и подсказок к правильным ответам

Вопрос 1

Соотнесите метод (свойство) и его описание:

  1. elem.querySelectorAll(...)
  2. elem.getElementsByClassName(...)
  3. elem.closest(...)
  4. elem.textContent
  5. elem.innerHTML
  6. getComputedStyle(elem)
  7. возвращает статическую коллекцию (NodeList), не обновляется при изменении DOM (Document Object Model)
  8. возвращает «живую» коллекцию (HTMLCollection), автоматически отражает изменения DOM (Document Object Model)
  9. ищет ближайшего предка, соответствующего CSS-селектору
  10. читает/задаёт только текст без интерпретации HTML (HyperText Markup Language)
  11. читает/задаёт HTML-содержимое (парсит/вставляет HTML (HyperText Markup Language))
  12. возвращает вычисленные стили элемента с учётом каскада
Вопрос 2

Расположите в правильном порядке шаги добавления нового элемента на страницу с оформлением и логикой:

  1. создать элемент (document.createElement)
  2. настроить содержимое/атрибуты (textContent/innerHTML, setAttribute)
  3. добавить CSS-класс(ы) (classList.add)
  4. вставить элемент в документ (например, append/prepend/before/after)
  5. назначить обработчик события (addEventListener)
Вопрос 3

Верным утверждением о document.getElementById является то, что этот метод ...

  1. можно вызывать у любого элемента
  2. возвращает «живую» коллекцию
  3. возвращает элемент по уникальному id, вызывается у document
  4. возвращает массив только из одного элемента
  5. ищет по CSS-селектору
Вопрос 4

Метод querySelectorAll возвращает ... NodeList

  1. статический
Вопрос 5

Современный способ удалить узел из DOM (Document Object Model) — это метод ...

  1. node.delete()
  2. node.remove()
  3. document.remove(node)
  4. parent.eraseChild(node)
  5. element.destroy()
Вопрос 6

Отменить переход по ссылке в обработчике события click позволяет метод ...

  1. return false
  2. event.stopPropagation()
  3. event.preventDefault()
  4. window.cancel()
  5. link.href = '#'
Вопрос 7

Получить вычислённые (применённые) стили элемента позволяет функция ...

  1. elem.style
  2. getComputedStyle(elem)
  3. elem.currentStyle
  4. window.stylesOf(elem)
  5. CSS.get(elem)
Вопрос 8

LocalStorage сохраняет данные между сессиями, … Storage очищается при закрытии вкладки <i>(укажите слово на английском языке)</i>

  1. session
  2. Session
Вопрос 9

Для реакции «на каждый ввод символа» в текстовом поле наиболее подходит событие ...

  1. change
  2. input
  3. submit
  4. keydown
  5. paste
Вопрос 10

Говоря о Cookies, можно утверждать, что они …

  1. хранятся только в sessionStorage
  2. не отправляются на сервер автоматически
  3. отправляются браузером на сервер при каждом запросе к домену
  4. имеют минимальный объём 5 МБ
  5. не могут быть прочтены или установлены из JavaScript
Вопрос 11

Вы разрабатываете страницу со списком заказов. Карточки заказов (.order-card) создаются динамически (часть приходит из API (Application programming interface) после загрузки страницы). Требования заказчика (см. ниже): • при клике по кнопке «Удалить» внутри карточки нужно удалить соответствующую карточку из DOM без перезагрузки страницы; • обработчик должен работать и для карточек, добавленных после первоначального рендера; • используйте современный метод удаления узла. Какое решение удовлетворяет требованиям?

  1. Для каждой кнопки при создании карточки: btn.addEventListener('click', () =˃ {   btn.parentElement.removeChild(btn.closest('.order-card')); });
  2. Делегирование событий от контейнера/документа: document.addEventListener('click', (e) =˃ {   if (e.target.classList.contains('delete')) {     const card = e.target.closest('.order-card');     if (card) card.remove();   } });
  3. Один раз навесить обработчик на все текущие кнопки: container.querySelectorAll('.delete').forEach(btn =˃ {   btn.onclick = () =˃ btn.closest('.order-card').remove(); });
  4. Делегирование, но проверять currentTarget: container.addEventListener('click', (e) =˃ {   if (e.currentTarget.matches('.delete')) {     e.currentTarget.closest('.order-card').remove();   } });
  5. Делегирование на контейнер по клику на карточку, а не на кнопку: container.addEventListener('click', (e) =˃ {   if (e.target.matches('.order-card')) e.target.remove(); });