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
Что выведется в консоль?
Anonymous Quiz
50%
{}
18%
Error
28%
undefined
4%
""
👍71
<figure>, <figcaption>

Элемент <figure> используется для вёрстки иллюстраций, изображений или другого автономного содержимого, которое может иметь поясняющую подпись в виде тега <figcaption>.

Пример
<figure>
<img src="elephant-sunset.jpg"
alt="Взрослый африканский слон стоит на фоне заката и задумчиво смотрит в
камеру.">
<figcaption>Слон на фоне заката</figcaption>
</figure>

Обычно тегом <figure> верстают изображение, иллюстрацию, кусок кода и тому подобное, на которые будут ссылаться из основного содержимого документа. При этом <figure> вместе со всем содержимым (картинкой, подписью) может быть перенесён в другую часть документа без нарушения целостности потока документа.

👉 @frontendInterview
👍7
Самый часто повторяющийся символ

Создайте функцию, которая принимает строку и возвращает самый часто повторяющий символ и количество его повторений

Примеры:
longestRepetition("aaaabb") => ["a",4]
longestRepetition("bbbaaabaaaa") => ["a",4]
longestRepetition("cbdeuuu900") => ["u",3]


👉 @frontendInterview
2
Руководство по DevOps

Профессиональное движение DevOps зародилось в 2009 году. Его цель — настроить тесные рабочие отношения между разработчиками программного обеспечения и отделами IT эксплуатации. Внедрение практик DevOps в повседневную жизнь организации позволяет значительно ускорить выполнение запланированных работ, увеличить частоту релизов, одновременно повышая безопасность, надежность и устойчивость производственной среды. Эта книга представляет собой наиболее полное и исчерпывающее руководство по DevOps, написанное ведущими мировыми специалистами.

👉 @frontendInterview
1👍1
Привет всем начинающим  верстальщикам и фронтендерам! Меня зовут Болясов Илья я фрилансер с опытом более 10 лет и сейчас техлид команды веб-разработчиков АТОМ. 

На рынке мы более 5 лет и уже сделали более 200 проектов различной тематики - от магазинов нижнего белья до корпоративных сайтов банков

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

Очень полезный формат, много чего можно подчерпнуть для себя, если вы только учитесь - при это на курсах вам такое не расскажут.

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

Еще раз ссылка на канал 👉 @html_practice
👎6👍2
В чем разница между оператором in и методом hasOwnProperty?

Оператор in и метод hasOwnProperty в JavaScript используются для проверки наличия свойств в объекте, но есть разница в том, как они работают.

Оператор in проверяет наличие указанного свойства в объекте или в его прототипе. Он возвращает true, если свойство найдено, включая свойства, унаследованные от прототипа объекта. Если свойство не найдено, оператор in возвращает false. Пример использования:

 const person = {
name: 'John',
age: 25
};

console.log('name' in person); // true
console.log('gender' in person); // false


В этом примере, оператор in используется для проверки наличия свойства 'name' и 'gender' в объекте person. person имеет свойство 'name', поэтому результат первой проверки будет true, а свойство 'gender' отсутствует, поэтому результат второй проверки будет false.

Метод hasOwnProperty является методом объекта и проверяет, содержит ли объект указанное свойство только в своей собственной области видимости (не учитывая свойства, унаследованные от прототипа). Он возвращает true, если свойство присутствует только в текущем объекте. Если свойство отсутствует или унаследовано, метод hasOwnProperty возвращает false. Пример использования:

 const person = {
name: 'John',
age: 25
};

console.log(person.hasOwnProperty('name')); // true
console.log(person.hasOwnProperty('gender')); // false


В этом примере, метод hasOwnProperty вызывается на объекте person для проверки наличия свойства 'name' и 'gender'. Так как свойство 'name' присутствует в самом объекте person, результат первой проверки будет true. Свойство 'gender' отсутствует в объекте person, поэтому результат второй проверки будет false.

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

👉 @frontendInterview
👍20👎21
Что выведется в консоль?
Anonymous Quiz
23%
1
18%
2
53%
3
6%
undefined
9🔥2
Как работает boxing/unboxing в JavaScript?

Boxing (также известный как wrapping) происходит, когда примитивное значение (такое как число, строка или логическое значение) преобразуется в соответствующий объект-обертку (класс-оболочку). В JavaScript есть объект-обертки для каждого из примитивных типов данных: Number, String и Boolean. Например:

 const number = 42;
const boxedNumber = new Number(number);
console.log(typeof boxedNumber); // "object"


В этом примере мы берем число 42 и упаковываем его, создавая объект Number. В результате получается объект-обертка boxedNumber.

JavaScript выполняет boxing автоматически в течение времени выполнения, когда примитивные значения требуются в качестве объектов. Например, при вызове методов объектов-оберток или доступе к свойствам. В таких случаях JavaScript автоматически упакует (забоксирует) примитивное значение во временный объект-обертку.

Unboxing происходит наоборот - когда значение извлекается из объекта-обертки и преобразуется обратно в примитивный тип данных. Это может происходить автоматически или явным образом с помощью методов преобразования типов данных, таких как valueOf() или toString(). Например:

 const boxedString = new String("Hello");
const unboxedString = boxedString.valueOf();
console.log(typeof unboxedString); // "string"


В этом примере мы создаем объект String с помощью new String("Hello"), а затем с помощью метода valueOf() извлекаем значение из объекта и преобразуем его обратно в примитивный тип данных.

Важно отметить, что boxing и unboxing в JavaScript могут быть прозрачными и неочевидными при работе с примитивными типами данных и объектами-обертками. JavaScript позволяет нам работать с примитивами, как если бы они были объектами, автоматически выполняя boxing или unboxing при необходимости.

👉 @frontendInterview
👍13👎21
Чему будет равняться a[b]?
Anonymous Quiz
47%
123
16%
456
18%
undefined
18%
Error
😁17👎8👍6🤔5😱21
Расскажите о паттерне Observer. Приведите примеры реализации этих паттернов в известных фреймворках (библиотеках, браузерных API).

Паттерн Observer представляет собой модель, в которой объекты наблюдатели (observers) зависят от состояния и изменений, происходящих в объекте-субъекте (subject) и автоматически получают уведомления об этих изменениях. Наблюдатели подписываются на события или изменения в объекте-субъекте и реагируют на них. Паттерн Observer является промежуточной компоновкой между отправителем (subject) и получателем (observer). Когда состояние отправителя изменяется, это приводит к автоматическому уведомлению о состоянии всем подписчикам (наблюдателям).

В Vue.js можно использовать функцию watch или опцию computed, чтобы наблюдать за изменением определенных данных. Вот пример:

 const app = new Vue({
data() {
return {
message: 'Hello, World!',
};
},
watch: {
message(newMessage) {
console.log('Новое сообщение:', newMessage);
},
},
});


Здесь мы создали новый экземпляр Vue и объявили свойство message. Затем мы использовали опцию watch для создания наблюдателя, который реагирует на изменение свойства message.

👉 @frontendInterview
👍31
Ultimate Typenoscript Handbook: Build, scale and maintain Modern Web Applications with Typenoscript (2023)

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

👉 @frontendInterview
Two Sum

Создайте функцию, которая принимает массив чисел и целевое число. Найдите в массиве два числа, которые в сумме дадут целевое число.

Пример:
twoSum([1, 2, 3], 4) // returns [0, 2] or [2, 0]

👉 @frontendInterview
🤔6👎4