Тест «Основы программирования на JavaScript» — это практичный набор вопросов, который охватывает ключевые разделы языка: базовые конструкции, массивы, функции, объекты, работу с DOM и событиями, а также асинхронность и Promises.
Основы программирования на JavaScript
Подойдёт для начинающих разработчиков и тех, кто хочет закрепить фундаментальные навыки JavaScript перед собеседованием или экзаменом.
JavaScript остаётся одним из самых востребованных языков программирования благодаря своей универсальности и использованию в веб-разработке. Этот тест помогает структурировать знания и проверить понимание ключевых тем, которые лежат в основе написания любого современного JavaScript-кода. Каждая тема включает 24 практических вопроса, построенных так, чтобы охватить типичные ошибки, базовые паттерны и основные приёмы работы.
От простых алгоритмических конструкций до асинхронного программирования — тест постепенно усложняется и погружает в реальные сценарии разработки. Вопросы помогут лучше разбираться в областях видимости, динамике объектов, работе с DOM-деревом, обработчиками событий и управлении промисами. Такой формат позволяет не просто повторить материал, но и научиться применять его в практических задачах.
1. Что выведет код: | ||
1) |
| |
2)+ |
| |
3) |
| |
ⓘ Правильный ответ - 14, потому что операция умножения выполняется раньше сложения по приоритету операторов | ||
2. Какие конструкции относятся к циклам в JavaScript? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4)+ |
| |
ⓘ Правильные варианты: for, while, do…while. switch - не цикл, а условная конструкция | ||
3. Что вернёт выражение: | ||
1) |
| |
2)+ |
| |
3) |
| |
ⓘ Правильный ответ - "object", это известная особенность JavaScript, null считается объектом по историческим причинам | ||
4. Какие инструкции являются условными? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ Правильные: if и switch позволяют выполнять код по условию, for - цикл, break - прерывание цикла или switch | ||
5. Что выведет | ||
1) |
| |
2)+ |
| |
3) |
| |
ⓘ Строка "5" при вычитании преобразуется в число, поэтому 5-2=3 | ||
6. Что относится к блочным областям видимости? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ Правильные: let и const имеют блочную область видимости. var - функциональная, function - зависит от объявления | ||
7. Что делает оператор | ||
1) | Сравнивает только значения | |
2)+ | Сравнивает значения и типы | |
3) | Преобразует типы автоматически | |
ⓘ Строгое сравнение учитывает и значение, и тип, поэтому верный ответ - сравнивает значения и типы | ||
8. Выбери циклы JavaScript: | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ for, while, do…while - корректные циклы, repeat в JS нет | ||
9. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ 0 приводится к false при преобразовании к логическому типу | ||
10. Что является операторами сравнения? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ ==, === и > сравнивают значения, поэтому верны. += -оператор присваивания с суммой, не сравнения | ||
11. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ При конкатенации строки и числа число приводится к строке, получается "52" | ||
12. Какие конструкции являются управляющими? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ if, switch, try…catch управляют выполнением кода; console - объект, не управляющая конструкция | ||
13. Что выведет | ||
1) |
| |
2)+ |
| |
3) |
| |
ⓘ Остаток от деления 10 на 3 равен 1, поэтому верный ответ - 1 | ||
14. Расположи этапы выполнения кода сверху вниз | ||
1 | Интерпретатор читает код | |
2 | Выполняются объявления переменных | |
3 | Выполняются инструкции | |
4 | Возвращается результат | |
ⓘ Правильный порядок: интерпретатор читает код, выполняются объявления переменных, выполняются инструкции, возвращается результат | ||
15. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Свойство length содержит количество элементов массива, здесь 3 | ||
16. Упорядочи стадии работы цикла | ||
1 | Инициализация | |
2 | Проверка условия | |
3 | Тело цикла | |
4 | Шаг итерации | |
ⓘ Правильная последовательность: инициализация, проверка условия, тело цикла, шаг итерации | ||
17. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Метод toUpperCase возвращает строку в верхнем регистре, здесь "ABC" | ||
18. Порядок работы | ||
1 | Проверка условия | |
2 | Ветка | |
3 | Ветка | |
4 | Продолжение выполнения | |
ⓘ Правильная последовательность: проверка условия → ветка if → ветка else → продолжение выполнения | ||
19. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ true приводится к 1, поэтому 1+1=2 | ||
20. Что делает оператор | ||
1)+ | Инвертирует логическое значение | |
2) | Сравнивает переменные | |
3) | Завершает цикл | |
ⓘ Инвертирует логическое значение: !true → false, !false → true | ||
21. Что выведет | ||
1)+ | true | |
2) | false | |
3) | Ошибка | |
ⓘ При приведении типов [] становится '', который равен false, поэтому true | ||
22. Чему равен | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ null и undefined равны при нестрогом сравнении, поэтому true | ||
23. Что выведет | ||
1) |
| |
2)+ |
| |
3) |
| |
ⓘ Массивы приводятся к строке при конкатенации, "1" + "2" = "12" | ||
24. Установите соответствия между конструкцией и описанием | |
| Условное выполнение кода |
| Цикл с счётчиком |
| Множественный выбор |
| Обработка ошибок |
1. | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Метод indexOf возвращает индекс первого совпадения элемента, здесь 2 находится на позиции 1 | ||
2. Установи соответствия между методом и его действием | |
| Добавляет элемент в конец |
| Удаляет элемент с конца |
| Удаляет элемент с начала |
| Добавляет элемент в начало |
3. Что делает метод | ||
1)+ | Возвращает | |
2) | Создаёт массив | |
3) | Преобразует объект в массив | |
ⓘ Метод проверяет, является ли значение массивом. Возвращает true для массивов | ||
4. Какие методы изменяют исходный массив? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4)+ |
| |
ⓘ push, pop и splice изменяют массив. slice возвращает новый массив и исходный не трогает | ||
5. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Свойство length содержит количество элементов, здесь 3 | ||
6. Что относится к методам перебора массива? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ forEach и map перебирают элементы и создают новые данные. push добавляет элемент, length — просто свойство | ||
7. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ includes проверяет наличие элемента, возвращает true если элемент найден | ||
8. Установи соответствия: метод → тип возвращаемого результата | |
| Новый массив |
| Новый массив с отфильтрованными |
| undefined |
| Найденный элемент |
9. Что делает метод | ||
1)+ | Возвращает новый объединённый массив | |
2) | Удаляет последний элемент | |
3) | Добавляет элемент в конец | |
ⓘ concat возвращает новый массив, объединяя два или более массива, исходный не изменяет | ||
10. Какие методы НЕ изменяют массив? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ slice и concat создают новый массив, push и pop изменяют исходный массив | ||
11. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ slice возвращает новый массив, начиная с индекса 1: [2,3] | ||
12. Какие методы перебора возвращают новый массив? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ map и filter создают новый массив. forEach возвращает undefined, reduce сворачивает в одно значение | ||
13. Что делает метод | ||
1)+ | Возвращает первый удовлетворяющий элемент | |
2) | Возвращает индекс | |
3) | Возвращает массив | |
ⓘ Возвращает первый элемент, удовлетворяющий условию callback | ||
14. Какие методы могут менять длину массива? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ push и pop изменяют длину массива. map и filter создают новый массив и длину исходного не меняют | ||
15. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Метод at позволяет обратиться к элементу с конца. at(-1) — последний элемент массива | ||
16. Какие методы сортируют массив? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ sort и toSorted возвращают отсортированный массив. filter и reduce не сортируют | ||
17. | ||
1)+ | Разворачивает массив | |
2) | Создаёт копию в обратном порядке | |
3) | Удаляет элементы | |
ⓘ reverse изменяет массив, разворачивая порядок элементов | ||
18. Расположи этапы работы | ||
1 | Итерация по элементам | |
2 | Вызов callback для каждого | |
3 | Формирование нового массива | |
4 | Возврат результата | |
ⓘ map: итерация по элементам → вызов callback → формирование нового массива → возврат результата | ||
19. Что делает метод | ||
1)+ | Возвращает одно итоговое значение | |
2) | Возвращает массив | |
3) | Удаляет элементы | |
ⓘ reduce сворачивает массив в одно значение, применяя функцию к каждому элементу | ||
20. Расположи шаги работы | ||
1 | Итерация по массиву | |
2 | Проверка условия | |
3 | Добавление подходящих элементов | |
4 | Возврат нового массива | |
ⓘ filter: итерация → проверка условия → добавление подходящих → возврат нового массива | ||
21. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ join объединяет элементы массива в строку с указанным разделителем | ||
22. Что делает метод | ||
1)+ | Возвращает индекс первого подходящего элемента | |
2) | Возвращает элемент | |
3) | Возвращает новый массив | |
ⓘ Возвращает индекс первого элемента, удовлетворяющего условию callback | ||
23. Что возвращает метод | ||
1)+ |
| |
2) | Массив с отфильтрованными | |
3) | Первый подходящий элемент | |
ⓘ every возвращает true, если все элементы удовлетворяют условию | ||
24. Что делает метод | ||
1)+ | Возвращает | |
2) | Возвращает новый массив | |
3) | Всегда возвращает | |
ⓘ some возвращает true, если хотя бы один элемент удовлетворяет условию | ||
1. Что выведет код:
| ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Вызов функции возвращает значение, здесь return 5, поэтому результат 5 | ||
2. Какие способы объявления функций существуют? | ||
1)+ | Function Declaration | |
2)+ | Function Expression | |
3)+ | Arrow Function | |
4) | Class Function | |
ⓘ Function Declaration, Function Expression и Arrow Function — корректные способы. Class Function не является стандартным способом объявления функции | ||
3. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Стрелочные функции в JavaScript имеют тип function | ||
4. Какие области видимости существуют в JS? | ||
1)+ | Глобальная | |
2)+ | Локальная (функция) | |
3)+ | Блочная (let/const) | |
4) | Статическая | |
ⓘ Глобальная, локальная (функция) и блочная (let/const) области видимости корректны. Статическая области в JS нет | ||
5. Что делает оператор | ||
1)+ | Завершает функцию и возвращает значение | |
2) | Прерывает цикл | |
3) | Ничего | |
ⓘ return завершает выполнение функции и возвращает указанное значение | ||
6. Что из перечисленного — корректные способы вызвать функцию? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ f(), f.call(this) и f.apply(this) корректны. f{} — синтаксически неверно | ||
7. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Свойство name функции содержит её имя, здесь "f" | ||
8. Какие переменные относятся к глобальной области видимости? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) | переменные внутри блока | |
ⓘ var и const, объявленные вне функций, глобальны. let внутри функции и переменные внутри блока локальны | ||
9. Что вернёт вызов функции | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Стрелочная функция возвращает результат выражения, здесь 10 | ||
10. Упорядочи этапы объявления и вызова функции | ||
1 | Объявление функции | |
2 | Вызов функции | |
3 | Выполнение тела функции | |
4 | Возврат значения | |
ⓘ Порядок: объявление функции → вызов → выполнение тела → возврат значения | ||
11. Что делает стрелочная функция | ||
1)+ | Умножает x на 2 и возвращает | |
2) | Создаёт массив | |
3) | Ничего | |
ⓘ Стрелочная функция возвращает результат выражения, здесь x умножается на 2 | ||
12. Упорядочи этапы замыкания | ||
1 | Функция объявляется | |
2 | Внутри создаются локальные переменные | |
3 | Возвращается функция из внешней функции | |
4 | Функция использует переменные внешней функции | |
ⓘ Сначала объявляется функция → создаются локальные переменные → возвращается функция → функция использует переменные внешней функции | ||
13. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Тип переменной — function | ||
14. Что делает функция высшего порядка? | ||
1)+ | Принимает функцию как аргумент | |
2)+ | Возвращает функцию | |
3) | Изменяет глобальный объект | |
4) | Ничего | |
ⓘ Функция высшего порядка принимает функцию как аргумент и/или возвращает функцию | ||
15. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Анонимная функция вызывается сразу, возвращает undefined | ||
16. Какие функции имеют блочную область видимости для переменных? | ||
1)+ | Стрелочные функции с let/const | |
2)+ | Функции внутри блока с let/const | |
3) | Function Declaration с var | |
4) | Глобальные функции | |
ⓘ Стрелочные функции с let/const и функции внутри блока с let/const имеют блочную область видимости. Function Declaration с var и глобальные функции — нет | ||
17. Что делает оператор | ||
1)+ | Позволяет обратиться к аргументам функции | |
2) | Возвращает длину массива | |
3) | Создаёт новый массив | |
ⓘ arguments позволяет обращаться ко всем переданным аргументам функции | ||
18. Установи соответствия: тип функции → характеристика | |
Function Declaration | Поднимается вверх области видимости |
Function Expression | Доступна после объявления |
Arrow Function | Не имеет своего this |
Anonymous Function | Не имеет имени |
19. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Стрелочная функция возвращает x+1, здесь 5+1=6 | ||
20. Упорядочь действия при рекурсивной функции | ||
1 | Вызов функции | |
2 | Выполнение тела функции | |
3 | Вызов самой себя | |
4 | Возврат значения | |
21. Что делает | ||
1)+ | Возвращает новую функцию | |
2) | Изменяет оригинальную функцию | |
3) | Ничего | |
ⓘ bind создаёт новую функцию с привязанным контекстом this | ||
22. Что делает метод call() | ||
1)+ | Выполняет функцию с указанным this | |
2) | Создаёт новую функцию | |
3) | Возвращает массив | |
ⓘ call вызывает функцию с указанным this | ||
23. Что делает | ||
1)+ | Выполняет функцию с this и массивом аргументов | |
2) | Создаёт копию функции | |
3) | Ничего | |
ⓘ apply вызывает функцию с this и массивом аргументов | ||
24. Какая область видимости имеет переменная внутри функции без var/let/const | ||
1)+ | Глобальная | |
2) | Локальная | |
3) | Блочная | |
ⓘ Если переменная не объявлена явно, она становится глобальной | ||
1. Как создать объект с пустым набором свойств? | ||
1)+ |
| |
2) |
| |
3)+ |
| |
ⓘ Пустой объект создаётся через фигурные скобки {}. let obj = [] создаёт массив, new Object() тоже корректно, но чаще используют {} | ||
2. Как получить значение свойства | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Доступ к свойству через точечную нотацию user.name. Скобочная нотация с ошибкой "namee" некорректна. user->name в JS не используется | ||
3. Что выведет | ||
1)+ | ["a","b"] | |
2) | ["1","2"] | |
3) | [] | |
ⓘ Object.keys возвращает массив ключей объекта: ["a","b"] | ||
4. Какие действия можно выполнять с объектами? | ||
1)+ | Добавлять свойства | |
2)+ | Удалять свойства | |
3)+ | Перебирать свойства | |
4) | Перебирать массивы | |
ⓘ Можно добавлять, удалять и перебирать свойства. Перебирать массивы к объекту не относится | ||
5. Что делает оператор | ||
1)+ | Удаляет свойство | |
2) | Удаляет объект | |
3) | Присваивает | |
ⓘ Удаляет указанное свойство из объекта | ||
6. Какие способы создать объект корректны? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ {} и new Object() создают объект, let obj = [] создаёт массив, let obj = function(){} — функция | ||
7. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Оператор in проверяет наличие свойства в объекте, возвращает true | ||
8. Какие методы позволяют перебирать объекты? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ Object.keys(), Object.values(), Object.entries() — корректные методы. forEach применяется к массивам | ||
9. Что делает | ||
1)+ | Копирует свойства из | |
2) | Создаёт новый объект | |
3) | Удаляет target | |
ⓘ Копирует свойства из source в target. Новый объект не создаёт, target не удаляется | ||
10. Какие свойства объектов можно перебирать? | ||
1)+ | Свойства, у которых | |
2)+ | Свойства объекта напрямую | |
3) | Свойства с | |
4) | Методы прототипа | |
ⓘ Перечисляемые свойства объекта (enumerable=true) и свойства объекта напрямую доступны для перебора. Свойства с enumerable=false и методы прототипа — нет | ||
11. Что выведет | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Object.values возвращает массив значений объекта, здесь [1,2]. | ||
12. Какие методы можно использовать для клонирования объекта? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ Object.assign({}, obj) и structuredClone(obj) создают копию объекта. slice и map — методы массивов | ||
13. Что делает | ||
1)+ | Запрещает изменение свойств | |
2) | Удаляет объект | |
3) | Позволяет менять свойства | |
ⓘ Замораживает объект: запрещает изменение существующих свойств и добавление новых | ||
14. Упорядочите шаги доступа к свойству объекта | ||
1 | Указать имя объекта | |
2 | Указать имя свойства | |
3 | Получить значение свойства | |
4 | Использовать значение | |
15. Что делает | ||
1)+ | Можно изменять существующие свойства | |
2) | Можно добавлять новые свойства | |
3) | Удаляет объект | |
ⓘ Запрещает добавление новых свойств, но позволяет изменять существующие | ||
16. Упорядочь этапы создания объекта через конструктор | ||
1 | Определяем функцию-конструктор | |
2 | Создаём новый объект через new | |
3 | Присваиваем свойства через this | |
4 | Используем объект | |
17. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Object.entries возвращает массив пар ключ-значение. | ||
18. Какие действия корректны с объектом? | ||
1)+ | Добавлять свойства | |
2)+ | Изменять свойства | |
3) | Присваивать объект в массиве | |
4) | Удалять массив | |
ⓘ Можно добавлять и изменять свойства объекта, присваивание объекта в массиве или удаление массива не относится | ||
19. Что делает метод | ||
1)+ | Возвращает | |
2) | Возвращает все свойства | |
3) | Удаляет свойство | |
ⓘ Возвращает true, если свойство принадлежит объекту напрямую, не через прототип | ||
20. Установите соответствия: объект → действие | |
| Запрещает добавление и изменение |
| Запрещает добавление новых свойств |
| Копирует свойства |
| Возвращает массив ключей |
21. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Свойство "a" существует в объекте напрямую → true | ||
22. Что делает | ||
1)+ | Все ключи, включая не перечисляемые | |
2) | Только перечисляемые | |
3) | Значения свойств | |
ⓘ Возвращает все ключи объекта, включая не перечисляемые | ||
23. Что делает | ||
1)+ | Возвращает прототип объекта | |
2) | Возвращает объект | |
3) | Возвращает свойства объекта | |
24. Какие методы возвращают массивы? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ Object.keys(), Object.values(), Object.entries() возвращают массивы. Object.freeze() — нет | ||
1. Что делает | ||
1)+ | Глубокое копирование элемента и детей | |
2) | Удаляет элемент | |
3) | Изменяет исходный элемент | |
ⓘ Создаёт копию элемента вместе с его потомками (глубокое копирование) | ||
2. Какие методы позволяют перемещать элемент в DOM? | |
|
|
|
|
ⓘ appendChild и insertBefore перемещают элемент в DOM. cloneNode создаёт копию, getElementById возвращает элемент по id | |
3. Что делает | ||
1)+ | Новый div элемент | |
2) | Изменяет существующий | |
3) | Удаляет элемент | |
ⓘ Создаёт новый div-элемент, который ещё не вставлен в DOM | ||
4. Соотнеси события и тип действия | |
| Щелчок мыши |
| Нажатие клавиши |
| Наведение мыши |
| Отправка формы |
5. Что делает | ||
1)+ | Устанавливает цвет фона | |
2) | Удаляет элемент | |
3) | Добавляет класс | |
ⓘ Изменяет цвет фона элемента на красный | ||
6. Что делает | ||
1)+ | Возвращает значение атрибута id | |
2) | Создаёт id | |
3) | Удаляет id | |
ⓘ Возвращает текущее значение атрибута id | ||
7. Что делает | ||
1)+ | Возвращает элемент body | |
2) | Создаёт новый body | |
3) | Удаляет body | |
ⓘ Возвращает элемент текущего документа | ||
8. Какие методы позволяют вставлять HTML-контент? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
9. Что делает | ||
1)+ | Добавляет обработчик события клика | |
2) | Вызывает событие | |
3) | Удаляет обработчик | |
ⓘ Привязывает обработчик события click к элементу | ||
10. Что делает | ||
1)+ | Удаляет обработчик | |
2) | Вызывает событие | |
3) | Создаёт событие | |
ⓘ Удаляет ранее добавленный обработчик события click | ||
11. Что делает | ||
1)+ | Отменяет стандартное поведение элемента | |
2) | Останавливает выполнение функции | |
3) | Удаляет событие | |
ⓘ Отменяет действие по умолчанию браузера для события | ||
12. Что делает | ||
1)+ | Останавливает всплытие | |
2) | Удаляет обработчик | |
3) | Выполняет функцию | |
ⓘ Прекращает всплытие события вверх по дереву DOM | ||
13. Какие события можно обрабатывать на кнопке? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ click, dblclick и mouseover — корректные. keydown обрабатывается на document/input | ||
14. Какие методы изменяют атрибуты элементов? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ setAttribute, getAttribute, removeAttribute — работают с атрибутами. querySelector — выборка элементов | ||
15. Что делает | ||
1)+ | Добавляет класс | |
2) | Удаляет элемент | |
3) | Возвращает класс | |
ⓘ Добавляет CSS-класс "active" элементу | ||
16. Какие методы работы с классами элементов существуют? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ add, remove и toggle — стандартные методы classList. appendChild не относится | ||
17. Какие методы позволяют вставлять элемент в DOM? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ appendChild и insertBefore — корректные. cloneNode — копия, getElementById — поиск | ||
18. Какие методы работы с событиями существуют? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ addEventListener и removeEventListener управляют событиями. click, keydown — события, не методы | ||
19. Как удалить элемент из DOM? | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ Метод remove() удаляет элемент из DOM | ||
20. Как добавить HTML-контент внутрь элемента? | ||
1)+ |
| |
2)+ |
| |
3) |
| |
4) |
| |
ⓘ innerHTML и insertAdjacentHTML вставляют HTML-код | ||
21. Что возвращает | ||
1)+ | Первый элемент с указанным классом | |
2) | Все элементы с классом | |
3) | undefined | |
ⓘ Первый найденный элемент с указанным классом | ||
22. Что делает | ||
1)+ | Поверхностное копирование элемента | |
2) | Глубокое копирование | |
3) | Удаляет исходный элемент | |
ⓘ Копирует элемент без дочерних элементов | ||
23. Что делает | ||
1)+ | Текстовое содержимое элемента | |
2) | HTML-контент | |
3) | CSS-класс | |
ⓘ Возвращает или задаёт текстовое содержимое элемента | ||
24. Что делает | ||
1)+ | Вставляет HTML в указанное место | |
2) | Заменяет элемент полностью | |
3) | Создаёт новый документ | |
ⓘ Вставляет HTML в указанное место относительно элемента (beforebegin, afterbegin, beforeend, afterend) | ||
1. Что вернёт | ||
1)+ |
| |
2) |
| |
3) |
| |
ⓘ await ожидает выполнение Promise и возвращает его результат, поэтому результат — 10 | ||
2. Что делает метод | ||
1)+ | Возвращает массив статусов и значений | |
2) | Прерывает при ошибке | |
3) | Возвращает первый результат | |
ⓘ Возвращает массив статусов и значений всех Promise, независимо от того, выполнены они или отклонены | ||
3. Что делает | ||
1)+ | Отложенный вызов функции | |
2) | Выполняется сразу | |
3) | Создаёт Promise | |
ⓘ Запланированный вызов функции выполняется после текущего стека, не блокируя код | ||
4. Какие методы позволяют работать с асинхронным кодом параллельно? | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
5. Что делает | ||
1)+ | Возвращает первый завершившийся | |
2) | Ожидает завершения всех | |
3) | Возвращает массив результатов | |
ⓘ Возвращает результат первого завершившегося Promise, остальные игнорируются | ||
6. Какие методы | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ then, catch и finally можно комбинировать для последовательной обработки Promise. setInterval не относится | ||
7. Что делает | ||
1)+ | Преобразует ответ в объект | |
2) | Возвращает текст | |
3) | Создаёт новый Promise без данных | |
ⓘ Метод then обрабатывает ответ fetch и преобразует его в объект через res.json() | ||
8. Какие типы состояния у | ||
1)+ |
| |
2)+ |
| |
3)+ |
| |
4) |
| |
ⓘ Pending — ожидание, fulfilled — выполнен, rejected — отклонён. stopped не существует | ||
9. Что делает | ||
1)+ | Ожидание | |
2) | Создаёт синхронный код | |
3) | Прерывает выполнение всего скрипта | |
ⓘ Позволяет писать асинхронный код синхронно: await ждёт Promise внутри async функции | ||
10. Соотнеси метод/конструктор → результат | |
Promise.resolve(value) | Fulfilled с value |
Promise.reject(error) | Rejected с error |
fetch(url) | Возвращает Promise с ответом |
async function | Возвращает Promise |
11. Что делает метод | ||
1)+ | Запускается после | |
2) | Останавливает выполнение | |
3) | Возвращает результат | |
ⓘ finally выполняется всегда после then или catch, не изменяя результат | ||
12. Какие конструкции позволяют отловить ошибки Promise? | ||
1)+ |
| |
2)+ |
| |
3) | then | |
4) | finally | |
ⓘ catch и try/catch внутри async функции позволяют обрабатывать ошибки. then и finally не ловят ошибки сами | ||
13. Что делает метод | ||
1)+ | Добавляет обработчик успешного результата | |
2) | Возвращает новый Promise всегда | |
3) | Прерывает выполнение | |
ⓘ Добавляет обработчик успешного выполнения Promise | ||
14. Что делает | ||
1)+ | Обрабатывает отклонённый Promise | |
2) | Обрабатывает успешный результат | |
3) | Создаёт новый Promise | |
ⓘ Обрабатывает отклонённый (rejected) Promise, ошибки | ||
15. Что делает | ||
1)+ | Функция возвращает | |
2) | Функция синхронная | |
3) | Функция завершает выполнение сразу | |
ⓘ Async function всегда возвращает Promise, внутри можно использовать await | ||
16. Что делает | ||
1)+ | Ожидает завершения | |
2) | Приостанавливает весь скрипт | |
3) | Создаёт новый Promise | |
ⓘ await приостанавливает выполнение async функции до завершения Promise, но не блокирует весь скрипт | ||
17. Упорядочи шаги выполнения async функции | ||
1 | Вызов функции | |
2 | Выполнение тела функции до await | |
3 | Ожидание завершения await | |
4 | Возврат результата | |
18. Что делает | ||
1)+ | Возвращает один | |
2) | Возвращает массив значений сразу | |
3) | Прерывает первый Promise | |
ⓘ Возвращает один Promise, который выполнится, когда все входящие Promise завершены | ||
19. Упорядочи работу | ||
1 | Создание массива Promise | |
2 | Запуск всех Promise параллельно | |
3 | Ожидание завершения всех | |
4 | Возврат массива результатов | |
20. Что делает | ||
1)+ | Возвращает первый завершившийся Promise | |
2) | Ожидает все Promise | |
3) | Возвращает массив результатов | |
ⓘ Возвращает результат первого выполненного Promise, остальные игнорируются | ||
21. Что делает | ||
1)+ | Возвращает | |
2) | Синхронный запрос | |
3) | Создаёт объект | |
ⓘ Запрос к серверу возвращает Promise с ответом, который можно обработать через then/catch | ||
22. Что делает метод | ||
1)+ | Добавляет обработчик успешного результата | |
2) | Возвращает новый Promise всегда | |
3) | Прерывает выполнение | |
ⓘ Обработчик для успешного результата Promise | ||
23. Что делает метод | ||
1)+ | Обрабатывает отклонённый | |
2) | Обрабатывает успешный результат | |
3) | Создаёт новый Promise | |
ⓘ Обрабатывает отклонённый Promise, ловит ошибки | ||
24. Что делает | ||
1)+ | Ожидание | |
2) | Создаёт синхронный код | |
3) | Прерывает выполнение всего скрипта | |
ⓘ Позволяет писать асинхронный код как синхронный, ожидая Promise внутри async функции | ||
generated at geetest.ru