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
Как создать объект, не имеющий прототипа?

Это можно сделать с помощью Object.create:

 const o1 = {}
console.log(o1.toString) // [object Object]

const o2 = Object.create(null)
// в качестве первого параметра методу Object-create передается объект-прототип
// нам не нужен объект-прототип, поэтому передаем null
console.log(o2.toString) // o2.toString is not a function


👉 @frontendInterview
Какой из HTML элементов является строчным (inline)?
Anonymous Quiz
80%
<a>
4%
<div>
3%
<table>
13%
<pre>
Как бы Вы реализовали метод Array.prototype.filter?

function filter(arr, filterCallback) {
// проверяем передаваемые параметры
if (!Array.isArray(arr) || !arr.length || typeof filterCallback !== 'function') {
return []
} else {
let result = []
for (let i = 0, len = arr.length; i < len; i++) {
// определяем соответствие возвращаемого результата заданному условию
if (filterCallback(arr[i], i, arr)) {
// помещаем значение, прошедшее фильтр, в result
result.push(arr[i])
}
}
return result
}
}


👉 @frontendInterview
Когда написал 10 строчек кода без помощи гугла

👉 @frontendInterview
Learn Vue JS + Google Maps API for Beginners (2020)

Google Maps API - надежный инструмент, который часто выбирают при создании приложений, работающих с местоположением пользователя. В книге автор учит создавать программы с использованием Vue.js, приводя в пример некоторые приложения. Книга основана на популярном курсе с Udemy.

👉 @frontendInterview
Twice as old

Ваша функция должна принимать два аргумента:
1. Возраст отца
2. Возраст сына

Посчитайте, сколько лет назад отец был в два раза старше сына.

Пример:
twiceAsOld(36,7) => 22

👉 @frontendInterview
Что такое флаги в регулярных выражениях?

Флаги — символы (набор символов), которые отвечают за то, каким именно образом будет происходить поиск.
В JavaScript их всего шесть:

i
С этим флагом поиск не зависит от регистра: нет разницы между A и a.

g
С этим флагом поиск ищет все совпадения, без него – только первое.

m
Многострочный режим.

s
Включает режим «dotall», при котором точка . может соответствовать символу перевода строки n.

u
Включает полную поддержку юникода. Флаг разрешает корректную обработку суррогатных пар.

y
Режим поиска на конкретной позиции в тексте

👉 @frontendInterview
Что нужно подставить в onClick, чтобы выполнилась функция handleClick с параметром 10 при нажатии?
Anonymous Quiz
16%
{this.handleClick(10)}
52%
{() => this.handleClick(10)}
20%
{() => handleClick(10)}
12%
{handleClick(10)}
Что такое Promise? Для чего он нужен?

Promise – это специальный объект, который содержит своё состояние. Вначале pending («ожидание»), затем – одно из: fulfilled («выполнено успешно») или rejected («выполнено с ошибкой»).

Синтаксис создания Promise:
 let promise = new Promise(function(resolve, reject) {
// функция-исполнитель (executor)
// "певец"
});
Функция, переданная в конструкцию new Promise, называется исполнитель (executor). Когда Promise создаётся, она запускается автоматически. Она должна содержать «создающий» код, который когда-нибудь создаст результат. В терминах нашей аналогии: исполнитель – это «певец».

Её аргументы resolve и reject – это колбэки, которые предоставляет сам JavaScript. Наш код – только внутри исполнителя.

Когда он получает результат, сейчас или позже – не важно, он должен вызвать один из этих колбэков:

resolve(value) — если работа завершилась успешно, с результатом value.
reject(error) — если произошла ошибка, error – объект ошибки.
Что значит фраза: "экран с высокой плотностью пикселей"?

CSS-пиксели (CSS pixels) — абстрактная величина, используемая браузерами для точного отображения контента на страницах, вне зависимости от экрана (DIPs: device-independent pixels).
Пример:
 <div height="200" width="300"></div>

Такой блок на обычных экранах будет занимать область 200x300 пикселей, а на Retina-экранах тот же блок получит 400x600 пикселей. Таким образом, на Retina-экранах плотность пикселей в 4 раза больше, чем на обычных.

👉 @frontendInterview
Возможно ли передать ref из компонента одному из его дочерних компонентов в React?
Anonymous Quiz
85%
да
15%
нет
Принципы юнит тестирования.

Юнит-тестирование - это процесс проверки отдельных модулей программы на корректность работы. Правильный подход к тестированию позволит максимизировать качество и скорость разработки проекта. Некачественные тесты, наоборот, могут нанести вред: нарушить работоспособность кода, увеличить количество ошибок, растянуть сроки и затраты. Грамотное внедрение юнит-тестирования - хорошее решение для развития проекта.

Научитесь разрабатывать тесты профессионального уровня, без ошибок автоматизировать процессы тестирования, а также интегрировать тестирование в жизненный цикл приложения. Со временем вы овладеете особым чутьем, присущим специалистам по тестированию. Как ни удивительно, практика написания хороших тестов способствует созданию более качественного кода.

👉 @frontendInterview
Short Long Short

Вам даны две строки - короткая и длинная. Создайте функцию, которая преобразует их в одну строку, которая будет состоять из короткой строки + длинной строки + короткой строки.

Примеры:
("1", "22") --> "1221"
("22", "1") --> "1221"


👉 @frontendInterview