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
V A P O R C O D E

Создайте функцию, которая будет преобразовывать строку в стиле V A P O R W A V E. Для этого нужно все буквы преобразовать в заглавные и добавить по два пробела между ними

Пример:
 "Lets go to the movies" 
// "L E T S G O T O T H E M O V I E S"


👉 @frontendInterview
Что такое модули (Modules)?

Модули позволяют объединять (использовать) код из разных файлов и избавляют нас от необходимости держать весь код в одном большом файле. До появления модулей в JS существовало две популярные системы модулей для поддержки кода:

1. CommonJS — Nodejs
2. AMD (AsyncronousModuleDefinition) — Browsers

Синтаксис модулей очень простой: мы используем import для импорта функциональности или значений из другого файла или файлов и export для экспорта.

Экспорт функциональности в другой файл (именной экспорт):
// ES5 CommonJS - helpers.js
exports.isNull = function(val){
return val === null
}
// ES6 модули
export function isNull(val){
return val === null;
}

Импорт функциональности в другой файл:
// ES5 CommonJS - index.js
const helpers = require('./helpers.js')

// ES6 модули
import * as helpers from './helpers.js' // helpers - это объект


👉 @frontendInterview
Как создать объект, не имеющий прототипа?

Это можно сделать с помощью 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