Стек технологий JavaScript.фип_БАК

Стек технологий JavaScript.фип_БАК — вариант 3

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

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

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

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

Вопрос 1

Какая арифметическая операция приводит к ошибке в JavaScript?

  1. Корень из отрицательного числа
  2. Деление на ноль
  3. Все арифметические операции в JavaScript будут отображаться без ошибки
Вопрос 2

Что из следующего верно в отношении соглашений об именовании переменных в JavaScript?

  1. Вы не должны использовать какое-либо из зарезервированных ключевых слов JavaScript в качестве имени переменной.
  2. Имена переменных JavaScript не должны начинаться с цифры (0-9).
  3. Имена переменных можно начать только со строчных символов латинского алфавита и использовать нижнее подчеркивание. Например: my_Variable
Вопрос 3

Назовите основные преимущества JSON?

  1. Читается любым редактором.
  2. Компактный, быстро компилируемый, читаемый человеком.
  3. Содержит только уникальные значения.
Вопрос 4

В чем разница между ключевыми словами «var», «let» и «const»?

  1. Переменные, объявленные с помощью ключевого слова «var», являются глобальными. Разница между «let» и «const» состоит в том, что в первом случае мы может менять значение переменной, а во втором — нет (константа).
  2. Принципиальной разницы нет. Зависит от версии js.
  3. const применяется только в функциях, var - это любая целочисленная переменная, let - любое другое значение переменной.
Вопрос 5

Что такое стрелочные функции (Arrow Functions)?

  1. Другое название рекурсивной функции.
  2. Функции, которые выполняются в строгой последовательности.
  3. Стрелочные функции создаются быстрее и имеют более читаемый синтаксис, чем функциональные выражения. В стрелочных функциях опускается слово «function»
  4. В функциональном выражении мы используем ключевое слово «return» для возврата значения. В стрелочной функции мы этого не делаем, поскольку стрелочные функции неявно возвращают значения при условии, что мы возвращаем одно выражение или значение.
Вопрос 6

Что такое классы (Classes)?

  1. Особый вид функций, вложенных одна в другую.
  2. Классы — это относительно новый способ написания функций-конструкторов в JS. Это синтаксический сахар для функций-конструкторов.
  3. Последовательно выстроенный ряд словарей.
Вопрос 7

Деструктуризация это …

  1. Процесс запускаемый на стадии парсинга, позволяющий выполнить функции объявленные при помощи function declaration
  2. Специальный синтаксис позволяющий распаковать массивы или объекты в несколько переменных
  3. Этап работы ‘сборщика мусора“ на котором происходит удаление всех непомеченных значений
Вопрос 8

Что такое функция обратного вызова (Callback Function)?

  1. Рекурсивная функция другими словами.
  2. Функция обратного вызова — это функция, вызов которой отложен на будущее.
  3. Функция, принимающая значения в зависимости от изменения значения переменной True, False.
Вопрос 9

Сохранить данные в localStorage можно используя …

  1. localStorage.saveItem(‘ключ’, значение)
  2. localStorage(‘ключ’, значение)
  3. localStorage.setItem(‘ключ’,значение)
Вопрос 10

Является ли использование унарного плюса (оператор "+") самым быстрым способом преобразования строки в число?

  1. Нет, это не так. Напротив, данный оператор привлекает довольно большой объём памяти и поэтому довольно медленный.
  2. Согласно MDN оператор "+" действительно является самым быстрым способом преобразования строки в число, поскольку он не выполняет никаких операций со значением, которое является числом.
  3. В JS преобразовать строку в число невозможно.
Вопрос 11

Что такое промисы (Promises)?

  1. Функции, выполняемые при достижении определенного значения переменной.
  2. Цикл, выполняемый в теле функции.
  3. Промисы — это один из приемов работы с асинхронным кодом в JS. Они возвращают результат асинхронной операции.
Вопрос 12

Что такое async/await?

  1. Async/await — относительно новый способ написания синхронного кода в JS. Выполняются синхронно в условиях многопоточности.
  2. Цикл, запускающий функции.
  3. Async/await — относительно новый способ написания асинхронного (неблокирующего) кода в JS. Им оборачивают промис.
Вопрос 13

Что такое неявное преобразование?

  1. Способ задать тип переменной, при котором она приобретает значение необходимое для конкретного случая.
  2. Метод, определяющий значение переменной исходя из её типа.
  3. Способ приведения значения к другому типу без нашего ведома (участия).
Вопрос 14

Что такое ECMAScript?

  1. Спецификация языка JavaScript
  2. Новый язык программирования
  3. Переработанная реализация JavaScript
Вопрос 15

Какой оператор служит для создания нового экземпляра из класса однотипных объектов?

  1. this
  2. new
  3. prototype
Вопрос 16

Какое ключевое слово позволяет создавать объекты общего вида?

  1. object
  2. this
  3. prototype
Вопрос 17

JSON объект можно создать при помощи …

  1. функции JSON.parse()
  2. функции JSON.stringify()
  3. метода .toJSON()
Вопрос 18

Условный (тернарный) оператор это …

  1. конструкция которая выполняет код несколько раз
  2. конструкция для определения значения переменной в зависимости от условия
  3. конструкция позволяющая циклично сравнить три или более переменных
Вопрос 19

Какая из следующих функций объекта Array объединяет все элементы массива в строку?

  1. concat()
  2. join()
  3. pop()
  4. map()
Вопрос 20

Какая из следующих функций String object создает строку, которая будет отображаться таким же жирным шрифтом, как если бы она была в теге < b > ?:

  1. anchor()
  2. big()
  3. blink()
  4. bold()
Вопрос 21

Какая из следующих функций объекта Array возвращает значение true, если каждый элемент в этом массиве удовлетворяет предоставленной функции тестирования?

  1. concat()
  2. every()
  3. push()
  4. some()
Вопрос 22

Инкапсуляция в ООП это …

  1. Сокрытие деталей реализации объекта
  2. Разделение ответственности между классами
  3. Создание иерархических структур данных
Вопрос 23

Принцип DRY применяется для …

  1. За счет создания более сложных, но коротких конструкций
  2. Сокращения количества переменных, за счет записи новых значений в уже существующие переменные
  3. Исключения дублирования кода, а следовательно сокращения времени разработки и тестирования кода
Вопрос 24

В чем разница между методами Object.freeze и Object.seal?

  1. Разница заключается в том, что при использовании метода Object.freeze мы не можем менять или редактировать свойства объекта, а при использовании Object.seal у нас такая возможность имеется.
  2. Разница заключается в том, что при использовании метода Object.seal мы не можем менять или редактировать свойства объекта, а при использовании Object.freeze у нас такая возможность имеется.
  3. Это один и тот же метод, только в разных версиях js.
Вопрос 25

Для создания класса в JS используется …

  1. Ключевое слово var
  2. Ключевое слово class
  3. Ключевое слово new
Вопрос 26

Какие приемы работы с асинхронным кодом в JS Вы знаете?

  1. Функции обратного вызова (Callbacks). Промисы (Promises). Async/await. Библиотеки вроде async.js, blueprint, q, co.
  2. Функции обратного вызова (Callbacks). Промисы (Promises). Async. Библиотеки вроде node.js, beng, query.
  3. Функции рекурсии. Фреймворки типа django. Async. Библиотеки вроде node.js, beng, query.
Вопрос 27

Что такое запоминание или мемоизация (Memoization)?

  1. Способ импорта данных из таблицы базы данных для обработки в программе.
  2. Способ хэширования.
  3. Прием создания функции, способной запоминать ранее вычисленные результаты или значения.
Вопрос 28

Для чего используется ключевое слово «new»?

  1. Ключевое слово «new» используется в функциях-конструкторах для создания нового объекта (нового экземпляра класса).
  2. Ключевое слово «new» используется в функциональном программировании для создания новой функции.
  3. Если есть несколько констант в одной функции. то каждая последующая константа должна начинаться с new.
Вопрос 29

Ключевое слово импорт используется для …

  1. Для создания общей области видимости с модулем
  2. Для отметки переменных и функций которые должны быть доступны за пределами текущего модуля
  3. Получения функционала из других модулей
Вопрос 30

Какие значения возвращают следующие выражения? 5 == “5” 5 === “5”

  1. True, False
  2. True, True
  3. False, True
Вопрос 31

Какие значения возвращают следующие выражения? 0 == False 0 === False

  1. True, False
  2. True, True
  3. False, True
Вопрос 32

Какие значения возвращают следующие выражения? null == undefined null === undefined

  1. True, False
  2. True, True
  3. False, True
Вопрос 33

Какие значения возвращают следующие выражения? console.log(!!null) console.log(!!undefined) console.log(!!'') console.log(!!0) console.log(!!NaN)

  1. True, False, False, False, True
  2. True, True, True, True, True
  3. False, True, False, False, True
  4. False, False, False, False, False
Вопрос 34

Какие значения возвращают следующие выражения? console.log(!!' ') console.log(!!{}) console.log(!![]) console.log(!!1)

  1. True, False, False, False
  2. True, True, True, True
  3. False, True, False, False
  4. False, False, False, False
Вопрос 35

Изменить прототип объекта после его создания можно используя …

  1. Прототип объекта нельзя изменить
  2. метод Object.setPrototypeOf
  3. метод Object.setPrototype
Вопрос 36

Необходимо установить соответствие между функциями и их описанием

  1. alert
  2. prompt
  3. confirm
  4. выводит на экран предупреждение и ожидает нажатия кнопки Ок
  5. отображает модальное окно с текстом и полем для ввода
  6. отображает модальное окно с текстом вопроса и кнопками Ок и Отмена
Вопрос 37

Принцип KISS подразумевает …

  1. Группировка простых компонентов в более сложные, для сокращения количества кода
  2. упрощение кода, разделение сложных компонентов на более простые, отказ от лишней функциональности
  3. решение задач при помощи сторонних библиотек, отказ от самостоятельного написания кода
Вопрос 38

Что будет записано в переменную test? var a = 5; var test = 5 != a ? "Yes" : "No";

  1. No
  2. Yes
  3. Ошибка
Вопрос 39

Посмотрите на данный код: async function func() { const promise = new Promise((res, rej) => { setTimeout(() => { console.log(1); }, 0) console.log(2) }) console.log(3); }   Расставьте выводы в консоль в порядке выполнения

  1. console.log(2)
  2. console.log(3)
  3. console.log(1)
Вопрос 40

Вы разрабатываете приложение, в котором есть форма регистрации. После ввода данных и нажатия на кнопку “Зарегистрироваться” форма отправляет запрос на сервер. Вопрос: Можете ли Вы использовать колбеки в этом сценарии, чтобы получить информацию о том, успешно ли прошла регистрация или произошла ошибка?

  1. да, можно использовать колбек-функции для обработки результата запроса. Если регистрация прошла успешно, функция-колбек получит информацию об этом, а если произошла ошибка, функция-колбек обработает её.
  2. нет, в данном случае не получится использовать колбэки так как это противоречит принципам SOLID
  3. да, для этого колбэк нужно отправить на сервер вместе с данными, там он получит информацию о статусе, и пришлет ответ
Вопрос 41

У вас есть массив чисел и вы хотите найти среднее арифметическое его элементов. Как вы это сделаете?

  1. Сначала нужно распаковать массив в переменные при помощи деструктуризации, затем сложить значения всех переменных и разделить на количество элементов массива
  2. Нужно сложить все числа в массиве используя метод .map(), а затем разделить это число на количество элементов в массиве
  3. Для начала нужно сложить все числа в массиве пройдясь по нему циклом, а затем разделить это число на количество элементов массива
Вопрос 42

Вы разрабатываете функцию, которая должна принимать строку и возвращать логическое значение (True или False). Эта функция должна проверить, является ли строка палиндромом. Однако вы не учли, что строка может быть представлена в виде массива символов. Вопрос: как преобразовать массив символов в строку, чтобы можно было проверить, является ли она палиндромом?

  1. можно воспользоваться методом .join()
  2. можно использовать метод .split()
  3. можно воспользоваться методом .string()
Вопрос 43

Вы работаете над проектом, который требует использования JavaScript на клиенте. Проект включает в себя страницу с формой авторизации, которая должна быть валидирована при отправке. Форма состоит из двух полей: имя пользователя и пароль. В форме есть кнопка отправки. Нужно ли проверять правильность введенных данных пользователем? Вызовется ли событие submit на элементе формы, при нажатии кнопки отправки если в ней не указан type=”submit”?

  1. Нет, можно ограничиться встроенными средствами html, такими как указание type и required. Нет, событие submit не будет вызвано из за отсутствия нужного type у кнопки отправки
  2. Да, для этого существуют шаблонные строки, которые позволяют проверить правильность введенных данных. Да событие submit будет вызвано, так как у кнопки внутри формы type по умолчанию установлен как submit
  3. Да, можно проверить данные при помощи шаблонных строк. Нет так как событие submit может быть вызвано только при наличии у кнопки отпраВки внутри формы type=”submit”
Вопрос 44

Вы работаете над веб-приложением, которое использует JavaScript для отображения данных на странице. Данные поступают с удаленного сервера с помощью AJAX-запросов. Вопросы: Как обрабатывать ошибки в JavaScript? Как оптимизировать производительность JavaScript-кода и улучшить его читаемость?

  1. Обработать ошибки можно используя конструкцию try catch или подключив дополнительные библиотеки. Чтобы улучшить производительность используется минификация и сжатие кода, кэширование. Чтобы улучшить читаемость можно использовать комментарии, структурирование кода и общепринятые соглашения о кодировании
  2. Обработка ошибок в JavaScript производится при помощи встроенных функций и методов. Для улучшения производительности код пишут в одном файле. Улучшить читаемость можно при помощи использования современного синтаксиса.
  3. Обработать ошибки в JS можно при помощи if else. Нельзя напрямую улучшить производительность кода, этим занимаются разработчики движка js. Читаемость кода можно улучшить дополнительными отступами и пробелами, а также используя комментарии.
Вопрос 45

При работе над большим и сложным проектом, стоит ли использовать принципы DRY, KISS, SOLID? Будете ли вы использовать модульный подход распределения кода?

  1. Нет, эти принципы предназначены для небольших и средних проектов. Да, так распределение кода по модулям позволяет улучшить читаемость кода.
  2. Буду использовать только SOLID, DRY и KISS не являются обязательными при разработке. Нет, модульный подход замедляет выполнение кода, а большое количество файлов затрудняет читаемость кода
  3. Да,эти принципы позволяют создать хороший проект, который смогут поддерживать другие программисты. Да, модульная система файлов позволяет разбить код на небольшие куски которые легко читать и поддерживать.
Вопрос 46

Установите соответствие между операторами и их описанием

  1. ||
  2. !
  3. &&
  4. находит и возвращает первое истинное значение
  5. Приводит аргумент к логическому типу и возвращает противоположное значение
  6. находит и возвращает первое ложное значение, либо последний операнд