Dot Calculator
Создайте калькулятор, в котором вместо цифр точки. Одна точка соответствует единице.
В калькуляторе должны быть реализованы сложение, вычитание, умножение и деление.
Примеры:
👉 @frontendInterview
Создайте калькулятор, в котором вместо цифр точки. Одна точка соответствует единице.
В калькуляторе должны быть реализованы сложение, вычитание, умножение и деление.
Примеры:
"..... + ..............."
result: "...................."
"..... - ..."
result: ".."
"..... - ."
result: "...."
"..... * ..."
result: "..............."👉 @frontendInterview
Расскажите про switch в JS.
Управляющая конструкция switch позволяет выполнять различные блоки кода, в зависимости от значения переменной.
Похож на if...else, но решает более узкую задачу.
Как пишется
В круглых скобках указывается переменная, значение которой сравнивается. В фигурных скобках с помощью ключевого слова case указываются возможные значения и код, который нужно выполнить.
Пример приветствия пользователя в зависимости от статуса:
👉 @frontendInterview
Управляющая конструкция switch позволяет выполнять различные блоки кода, в зависимости от значения переменной.
Похож на if...else, но решает более узкую задачу.
Как пишется
В круглых скобках указывается переменная, значение которой сравнивается. В фигурных скобках с помощью ключевого слова case указываются возможные значения и код, который нужно выполнить.
Пример приветствия пользователя в зависимости от статуса:
switch (membershipStatus) {
case "vip":
// выполнится, если в переменной membershipStatus хранится строка "vip"
console.log("Приветствуем вас, ваше великолепие!")
console.log("рады вас видеть!")
break
case "diamond":
console.log("Здравствуйте, бриллиантовый клиент!")
break
case "gold":
console.log("Привет, золотой мой!")
break
default:
// выполнится, если ни один другой случай не сработал
console.log("Прив")
break
}👉 @frontendInterview
👍1
Селектор потомка
Цепочка перечисленных через пробел селекторов обозначает вложенность от родительских элементов к потомку. Это позволяет управлять стилями вложенных элементов.
Такие вложенные селекторы используются, если нужно задать разные стили для элемента на всей странице и для элемента внутри определённого блока.
Пример
Скажем, цвет текста в абзацах карточки новостей должен отличаться от текста на всей странице. При этом все остальные стили для абзацев одинаковые.
Стили текста для всей страницы:
👉 @frontendInterview
Цепочка перечисленных через пробел селекторов обозначает вложенность от родительских элементов к потомку. Это позволяет управлять стилями вложенных элементов.
Такие вложенные селекторы используются, если нужно задать разные стили для элемента на всей странице и для элемента внутри определённого блока.
Пример
Скажем, цвет текста в абзацах карточки новостей должен отличаться от текста на всей странице. При этом все остальные стили для абзацев одинаковые.
Стили текста для всей страницы:
.text {
color: #ffffff;
line-height: 1.4;
}
Стили для текста, вложенного в блок .news-card: .news-card .text {
color: #000000;
}👉 @frontendInterview
Как правильно типизировать переменную surname в TypeScript?
Anonymous Quiz
7%
surname{string}
13%
string: surname
6%
<string>surname
74%
surname: string
Подход «Pixel Perfect»
Pixel Perfect — это подход в вёрстке, когда итоговый результат максимально точно, пиксель в пиксель, совпадает с дизайнерским макетом. Для этого макет сайта сохраняется как обычная картинка, после чего эта картинка накладывается поверх свёрстанного сайта при помощи специальных инструментов, например, браузерных расширений.
Есть несколько способов, как можно найти визуальные отличия.
1. Сравнение скриншота и макета. Можно сделать скриншот сайта и загрузить в графический редактор, после чего сравнить скриншот и исходный макет в режиме наложения. Это удобно для дизайнеров. Но весьма неудобно для разработчика, потому что после каждого минимального изменения придётся делать новый скриншот и заменять им старый.
2. Добавление картинки макета на страницу. Можно сохранить макет картинкой, добавить её в документ с помощью тега <img> и разместить в центре страницы. После чего можно изменить прозрачность картинки с помощью opacity, и отличия сразу будут видны.
3. Браузерные расширения. У предыдущего способа есть важный недостаток — нужно на каждую страницу сначала добавить картинку, затем написать для неё стили, а в конце не забыть её удалить. Браузерные расширения, такие как PerfectPixel, берут эту рутину на себя.
👉 @frontendInterview
Pixel Perfect — это подход в вёрстке, когда итоговый результат максимально точно, пиксель в пиксель, совпадает с дизайнерским макетом. Для этого макет сайта сохраняется как обычная картинка, после чего эта картинка накладывается поверх свёрстанного сайта при помощи специальных инструментов, например, браузерных расширений.
Есть несколько способов, как можно найти визуальные отличия.
1. Сравнение скриншота и макета. Можно сделать скриншот сайта и загрузить в графический редактор, после чего сравнить скриншот и исходный макет в режиме наложения. Это удобно для дизайнеров. Но весьма неудобно для разработчика, потому что после каждого минимального изменения придётся делать новый скриншот и заменять им старый.
2. Добавление картинки макета на страницу. Можно сохранить макет картинкой, добавить её в документ с помощью тега <img> и разместить в центре страницы. После чего можно изменить прозрачность картинки с помощью opacity, и отличия сразу будут видны.
3. Браузерные расширения. У предыдущего способа есть важный недостаток — нужно на каждую страницу сначала добавить картинку, затем написать для неё стили, а в конце не забыть её удалить. Браузерные расширения, такие как PerfectPixel, берут эту рутину на себя.
👉 @frontendInterview
Как сделать параметр функции опциональным в TypeScript?
Anonymous Quiz
7%
?name: string
12%
name: optional
72%
name?: string
8%
optional name: string
JavaScript. Дополнительные уроки для начинающих (2022)
В книге 20 иллюстрированных уроков, более 20 практических упражнений на тему программирования веб-сценариев и 18 заданий для самостоятельной работы. Простым языком, кратко, наглядно рассказано о новых программных инструментах, появившихся в последние годы в языке JavaScript.
👉 @frontendInterview
В книге 20 иллюстрированных уроков, более 20 практических упражнений на тему программирования веб-сценариев и 18 заданий для самостоятельной работы. Простым языком, кратко, наглядно рассказано о новых программных инструментах, появившихся в последние годы в языке JavaScript.
👉 @frontendInterview
Определите дату по номеру дня
Напишите функцию, которая принимает номер дня и булевый аргумент isLeap, который определяет, високосный ли год.
Функция должна вернуть дату в строковом формате
Примеры:
👉 @frontendInterview
Напишите функцию, которая принимает номер дня и булевый аргумент isLeap, который определяет, високосный ли год.
Функция должна вернуть дату в строковом формате
Примеры:
getDay(41, false) => "February, 10"
getDay(60, false) => "March, 1"
👉 @frontendInterview
Протокол HTTP
HTTP был разработан как протокол обмена данными между веб-сервером и веб-браузером.
Есть три главных объекта, которые обмениваются сообщениями:
- Клиент (user agent) — программа, которая отправляет запросы, получает и обрабатывает ответы от имени пользователя на устройстве пользователя, например, браузер.
- Сервер (веб-сервер) — программа, которая работает на сервере, принимает и обрабатывает запросы от клиента, а затем отправляет ответы клиенту. Этой программой является веб-сервер.
- Прокси (прокси-сервер) — программа, которая работает на сервере, пропускает через себя запросы и ответы и выступает в роли посредника между клиентом и сервером.
👉 @frontendInterview
HTTP был разработан как протокол обмена данными между веб-сервером и веб-браузером.
Есть три главных объекта, которые обмениваются сообщениями:
- Клиент (user agent) — программа, которая отправляет запросы, получает и обрабатывает ответы от имени пользователя на устройстве пользователя, например, браузер.
- Сервер (веб-сервер) — программа, которая работает на сервере, принимает и обрабатывает запросы от клиента, а затем отправляет ответы клиенту. Этой программой является веб-сервер.
- Прокси (прокси-сервер) — программа, которая работает на сервере, пропускает через себя запросы и ответы и выступает в роли посредника между клиентом и сервером.
👉 @frontendInterview
❤1
clip
С помощью свойства clip можно обрезать элемент, оставив видимой только его часть.
Возьмём изображение симпатичного домика и при помощи свойства clip обрежем часть картинки:
👉 @frontendInterview
С помощью свойства clip можно обрезать элемент, оставив видимой только его часть.
Возьмём изображение симпатичного домика и при помощи свойства clip обрежем часть картинки:
img {
clip: rect(auto 220px 150px auto);
}👉 @frontendInterview
Как устроен Dockerfile
Dockerfile — это текстовый файл, в котором описан рецепт создания образа Docker.
Docker умеет создать идентичные условия работы приложения, независимо от операционных систем и установленных служб на компьютере разработчика и на сервере. Для этого используется концепция контейнера. Прототипом контейнера является образ, в Dockerfile описывают процесс его создания в виде набора инструкций.
Инструкции записываются построчно. На первом месте указывается команда для Docker, которую нужно выполнить, а затем — список аргументов этой команды:
👉 @frontendInterview
Dockerfile — это текстовый файл, в котором описан рецепт создания образа Docker.
Docker умеет создать идентичные условия работы приложения, независимо от операционных систем и установленных служб на компьютере разработчика и на сервере. Для этого используется концепция контейнера. Прототипом контейнера является образ, в Dockerfile описывают процесс его создания в виде набора инструкций.
Инструкции записываются построчно. На первом месте указывается команда для Docker, которую нужно выполнить, а затем — список аргументов этой команды:
# Comment
INSTRUCTION arguments👉 @frontendInterview