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

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

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

Канал в реестре РКН:
https://rknn.link/su
Download Telegram
Что такое DocumentFragment?

DocumentFragment — это контейнер, который может содержать произвольное количество элементов DOM. Если совсем по-простому, можно представлять его себе как ведро. Элементы складываются в него, чтобы в нужный момент их можно было разом вывалить куда надо.

Как создать?
 var fragment = document.createDocumentFragment();

И зачем он нужен?
Хранение кусков HTML, не имеющих общего предка.

Бывают ситуации, когда нам нужно заменить содержимое элемента, но сам элемент не трогать. Допустим, мы используем делегирование событий, и все обработчики событий, происходящих на внутренних элементах, навешены на внешний div. В таком случае нам идеально подойдёт DocumentFragment:
 div.innerHTML = "";
div.appendChild(fragmentWithAllContent);
Перевод Boolean в строку

Напишите функцию, которая принимает булево значение возвращает его в формате строки

Пример:
booleanToString(true) => "true"
Каково расстояние между ячейками first и third в таблице?
Anonymous Quiz
21%
0px
30%
16px
45%
24px
3%
10px
Для чего используется window.getComputedStyle?

Итак, изменить стиль очень просто. Но как его прочитать?
Например, мы хотим знать размер, отступы, цвет элемента. Как это сделать?

Свойство style оперирует только значением атрибута "style", без учёта CSS-каскада.
Поэтому, используя elem.style, мы не можем прочитать ничего, что приходит из классов CSS.
Например, здесь style не может видеть отступы:
…Но что, если нам нужно, скажем, увеличить отступ на 20px? Для начала нужно его текущее значение получить.
Для этого есть метод: getComputedStyle.
Синтаксис:
getComputedStyle(element, [pseudo])

element - Элемент, значения для которого нужно получить
pseudo - Указывается, если нужен стиль псевдоэлемента, например ::before. Пустая строка или отсутствие аргумента означают сам элемент.

Результат вызова – объект со стилями, похожий на elem.style, но с учётом всех CSS-классов.
Какие существуют способы форматирования даты?

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

Это делается вызовом date.toLocaleString(локаль, опции), в котором можно задать много настроек. Он позволяет указать, какие параметры даты нужно вывести, и ряд настроек вывода, после чего интерпретатор сам сформирует строку.

Пример с почти всеми параметрами даты и русским, затем английским (США) форматированием:
 var date = new Date(2014, 11, 31, 12, 30, 0);
var options = {
era: 'long',
year: 'numeric',
month: 'long',
day: 'numeric',
weekday: 'long',
timezone: 'UTC',
hour: 'numeric',
minute: 'numeric',
second: 'numeric'
};

alert( date.toLocaleString("ru", options) );
// среда, 31 декабря 2014 г. н.э. 12:30:00

alert( date.toLocaleString("en-US", options) );
// Wednesday, December 31, 2014 Anno Domini 12:30:00 PM
Какой цвет у непосещенной ссылки?
Anonymous Quiz
30%
red
50%
green
18%
blue
2%
black
Как получить текущие значения компонентов даты?

Существуют методы получения года, месяца и т.д. из объекта Date:
 getFullYear()
Получить год (4 цифры)
 getMonth()
Получить месяц, от 0 до 11.
 getDate()
Получить день месяца, от 1 до 31, что несколько противоречит названию метода.
 getHours(), getMinutes(), getSeconds(), getMilliseconds()
Получить, соответственно, часы, минуты, секунды или миллисекунды.

Никакого getYear(). Только getFullYear()
Многие интерпретаторы JavaScript реализуют нестандартный и устаревший метод getYear(), который порой возвращает год в виде двух цифр. Пожалуйста, обходите его стороной. Если нужно значение года, используйте getFullYear().

Кроме того, можно получить определённый день недели:
 getDay()
Вернуть день недели от 0 (воскресенье) до 6 (суббота). Несмотря на то, что в ряде стран за первый день недели принят понедельник, в JavaScript начало недели приходится на воскресенье.
Все вышеперечисленные методы возвращают значения в соответствии с местным часовым поясом.
Непрерывное развёртывание ПО

В книге Джеза Хамбла и Дэвида Фарли приведены принципы и практические методы для сборки, автоматизации, тестирования и развёртывания высоконагруженных приложений. Авторы рассказывают о непрерывном интегрировании, разбиении проекта на компоненты и контроле версий.
JavaScript Array Filter

Используйте JS filter, чтобы отфильтровать массив чисел и получить четные числа.

Пример:
getEvenNumbers([2,4,5,6]) // should == [2,4,6]
Кодеры за работой. Размышления о ремесле программиста

Питер Сейбел взял интервью у 15 профессионалов: Кена Томпсона, создателя UNIX, Берни Козелла, участника первой реализации сети ARPANET, Дональда Кнута, Гая Стила, Джейми Завински, Саймона Пейтон-Джонса, Питера Норвига, Дугласа Крокфорда, Джошуа Блоха, Брендана Айка, Джо Армстронга, Брэда Фицпатрика, создателя Живого Журнала, и других.

Все они «подсели» на программирование ещё в школе. Тогда, на заре зарождения отрасли, лишь в немногих учебных заведениях читались курсы по компьютерным наукам. Поэтому будущим гуру приходилось покорять профессиональные вершины самостоятельно, но всех их отличает творческое горение и полная самоотдача любимому делу. Вы узнаете, что они думают о будущем программирования и как сами научились программировать, как, по их мнению, нужно проектировать ПО, как выбор языка программирования влияет на продуктивность и можно ли облегчить выявление труднонаходимых ошибок.
Что такое Git?

Git — абсолютный лидер по популярности среди современных систем управления версиями. Это развитый проект с активной поддержкой и открытым исходным кодом.

Git — система управления версиями с распределенной архитектурой. В отличие от некогда популярных систем вроде CVS и Subversion (SVN), где полная история версий проекта доступна лишь в одном месте, в Git каждая рабочая копия кода сама по себе является репозиторием. Это позволяет всем разработчикам хранить историю изменений в полном объеме.

Разработка в Git ориентирована на обеспечение высокой производительности, безопасности и гибкости распределенной системы.
Каково значение свойства color элемента div?
Anonymous Quiz
3%
black
29%
yellow
7%
red
61%
blue