Frontend задачи с собесов | теория, live-coding
1 subscriber
11 photos
1 link
Публикую здесь теорию и задачи с Frontend собесов.

По вопросам: @vladsolyankin79
Download Telegram
#1 #задачи

Необходимо реализовать функцию, которая будет принимать на вход строку и проверять, является ли она палиндромом (читается одинаково с обеих сторон).

Здесь проверяется знание основных методов строк и массивов, а также базовое логическое мышление о том, что строку нужно развернуть и сравнить с оригиналом.
#2 #задачи

Необходимо реализовать функцию curriedSum (от термина каррирование), которая будет складывать два числа следующим образом:

curriedSum(3)(4) => 7
curriedSum(1)(2) => 3


Здесь проверяется понимание синтаксиса и работы функций в JavaScript.
#3 #задачи

Необходимо реализовать функцию callOnce, которая будет гарантировать, что переданная в неё функция выполнится только один раз.

В данной задаче проверяется понимание базового синтаксиса функций, знание о массиве ...args.
#1 #теория
1. Назовите основные типы данных в JavaScript.
Ответ: string, number, null, undefined, boolean, symbol, bigint

2. В чём разница между операторами "==" и "===" (двойное и тройное равно)?
Ответ:
Если просто, то == сравнивает только по значению, а === по значению и типу.
Для большего понимания прочитайте следующую статью:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness

3. Для чего используются операторы "&&" и "||"?
Ответ:
&& (логическое и) - возвращает первое ложное значение или последний операнд в выражении
|| (логическое или) - возвращает первое истинное значение.


4. Для чего используется оператор "!!"?
Ответ:
!! (двойное отрицание) - приводит значение справа к булевому типу.

5. В чём отличия var, let и const при объявлении переменных?
Ответ:
var - переменные являются глобальными, объявление всплывает наверх, старый метод.
let и const - привязаны к блоку в котором объявлены, let позволяет явно изменить переменную, а const (константа) - нет.
#2 #теория

1. Что такое strict mode в JavaScript?
Ответ:
Это специальный режим в JavaScript, который позволяет вам писать более безопасный и оптимизированный код.
Включение strict mode помогает избежать ряда ошибок и улучшает производительность скрипта.


2. Что такое function declaration (объявление функции) и function expression (функциональное выражение)?
Ответ:
Function Declaration (объявление функции) создаёт именованную функцию и поднимается (hoisted) вверх своей области видимости.

Function Expression (функциональное выражение) создаёт функцию в виде выражения и может быть анонимной или именованной. Функциональные выражения не поднимаются (hoisted).


3. Что такое всплытие (hoisting)?
Ответ:
Поднятие (hoisting) — это механизм в JavaScript, при котором объявления переменных и функций перемещаются вверх своей области видимости во время компиляции.