Frontend Interview - собеседования по Javanoscript / Html / Css – Telegram
Frontend Interview - собеседования по Javanoscript / Html / Css
11.4K subscribers
2.1K photos
118 videos
319 files
530 links
Канал для подготовки к собеседованиям по фронтенду

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/frontendinterview

Канал в реестре РКН:
https://rknn.link/su
Download Telegram
Что такое анонимная функция?

Анонимные функции могут использоваться для хранения некоторой функциональности в переменной и передавать эту функциональность вокруг нее и создаваться во время выполнения.

Определение нормальной функции:
 function callMe() {
alert('Hello, I am normal function !!');
}
callMe();
В приведенном выше скрипте вы видите, что он создает функцию с именем «callMe».

Определение анонимной функции:
 var callMe = function() {
alert('Hello, I am Anonymous !!');
}
callMe();
В приведенном выше скрипте вы можете видеть, что он объявляет неназванную функцию и присваивает ее новой переменной с именем «callMe».

Здесь мы видим, что эти два способа определения функции по существу одинаковы; оба приводят к создаваемой функции и новую переменную с именем «callMe», назначенную для текущей области. Однако вторая функция анонимна. Функциональный оператор можно использовать где угодно, чтобы использовать выражение. Например, вы можете использовать оператор функции, когда назначается переменная, когда параметр передается функции или в операторе return.

👉 @frontendInterview
Опишите, как работает прототипно-ориентированная модель наследования в JS.

В плане наследования JavaScript работает лишь с одной сущностью: объектами. Каждый объект имеет внутреннюю ссылку на другой объект, называемый его прототипом. У объекта-прототипа также есть свой собственный прототип и так далее до тех пор, пока цепочка не завершится объектом, у которого свойство prototype равно null. По определению, null не имеет прототипа и является завершающим звеном в цепочке прототипов.
— Наследование с цепочкой прототипов

При попытке получить доступ к какому-либо свойству объекта, свойство вначале ищется в самом объекте, затем в цепочке прототипов. Поиск ведется до тех пор, пока не найдено свойство с совпадающим именем или не достигнут конец цепочки прототипов.

👉 @frontendInterview
С нас крутые спикеры, интересные лекции и трудоустройство, с тебя – желание учиться и минимум год опыта коммерческой разработки на JavaScript.

Как все проходит?
3 раза в неделю на протяжении двух месяцев тебя будут обучать Senior’ы и Teamlead’ы ведущих банков страны.

Чему будут учить?
На курсе будем изучать React, Angular, RxJS и Vue. Помимо этого еще будут практические занятия и домашние задания.

Что будет после учебы?
Трудоустройство на Middle позицию в Цифровые привычки. Ты будешь работать над проектами крупных банков страны в Москве, в СПб или на удаленке.

Пройти вступительный тест на курс: https://cutt.ly/5QjN7sg
В чем разница между значениями: null, undefined или undeclared? Как бы вы реализовали проверку на эти значения?

null — пустое значение,
undefined — неопределенное значение
undeclared — переменная не была объявлена, вызов ее вызовет ошибку, вызов typeof покажет undefined (для реализации проверки).

Для тестовой переменной «a», проверка может быть реализована следующим образом:
typeof a !== 'undefined' && Boolean(a)

👉 @frontendInterview
Advanced JavaScript (2019)

Это практическое руководство, которое шаг за шагом проведет вас через JavaScript и его многочисленные особенности. Вы начнете с изучения того, как использовать синтаксис ES6, а затем поработаете с многими другими аспектами, которые может предложить современный JavaScript. Вы также изучите различные методы тестирования проектов JavaScript.
В заключительных главах вы познакомитесь с функциональным программированием и научитесь использовать его для создания своих приложений. Используя эту книгу в качестве руководства, вы также сможете разрабатывать API-интерфейсы с использованием Node.js и Express, создавать интерфейсы с помощью React / Redux и мобильные приложения с помощью React Native / Expo.

👉 @frontendInterview
Keypad horror

Есть два стандарта расположения цифр. 1 - Как на numpad в компьютерной клавиатуре, 2 - как в телефоне.

Вам нужно создать функцию, которая преобразует число первого стандарта в число второго.

Пример:
"789" -> "123"

👉 @frontendInterview
Что такое Модуль Math в JS?

Math — это объект, хранящий в себе различные математические константы (например число π) и функции типа вычисления квадратного корня. Обычно используется для генерации случайных чисел или округления значений.

Для использования констант из объекта Math достаточно просто их указать. Таких констант куча, поэтому при необходимости их нужно поискать в документации:
 console.log(Math.PI) // 3.141592653589793
Для вызова функций из объекта Math также достаточно просто их указать:
console.log(Math.abs(-118)) // 118

👉 @frontendInterview
Какое значение примет result?
Anonymous Quiz
23%
false
20%
undefined
58%
true
Как убрать фокус с DOM-элемента?

Вызов метода blur на DOM-элементе снимает фокус с элемента. Порождает событие blur, которое можно обработать с помощью addEventListener.

Метод blur не принимает аргументов:
const input = document.getElementById('myInput')
input.blur()

Самым распространённым применением является снятие фокуса с текущего элемента при появлении всплывающего окна, которое закрывает весь текущий интерфейс. Это необходимо, чтобы фокус с клавиатуры двигался по элементами окна, а не по элементам под ним.

👉 @frontendInterview
Как программно прокрутить окно до определённого элемента вне зависимости от положения элемента в окне?

Для этого можно использовать метод scrollIntoView.
 element = document.querySelector("#about") // в element должен быть любой DOM-элемент на странице
element.scrollIntoView()

У scrollIntoView может быть аргумент типа boolean:
- Если указать true, то скролл будет перемещён чтобы верхняя граница элемента совпала с верхней границей окна.
- Если указать false, то скролл остановится так, чтобы нижняя граница элемента была вровень с нижней границей окна.

Использовать scrollIntoView наиболее полезно в случаях длинных веб-страниц, где нужен скролл к определённым частям, а использования ссылок с якорями (например, <a href="#about">О нас</a>) недостаточно.

👉 @frontendInterview