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.getOwnPropertyNames() и Object.keys()

Object.getOwnPropertyNames() возвращает перечислимые и не перечислимые свойства из объекта или массива.
Пример:
 var arr = ["a", "b", "c"]; 
print(Object.getOwnPropertyNames(arr).sort()); // prints "0,1,2,length"

// Array-like object
 var obj = { 0: "a", 1: "b", 2: "c"}; 
print(Object.getOwnPropertyNames(obj).sort()); // prints "0,1,2"

Object.keys() возвращает перечислимые свойства из объекта или массива.
Пример:
 var arr = ["a", "b", "c"]; 
alert(Object.keys(arr)); // will alert "0,1,2"

// array like object
var obj = { 0 : "a", 1 : "b", 2 : "c"};
alert(Object.keys(obj)); // will alert "0,1,2"


👉 @frontendInterview
Пояснение

Обычные переменные в JavaScript нельзя удалить с помощью оператора delete. В строгом режиме попытка удалить переменную вызовет ошибку и не будет разрешена.

Оператор delete может удалять только свойства объекта. Свойства объекта "квалифицированы", если они конфигурируемы.

В отличие от общепринятого мнения, оператор delete не имеет ничего общего с непосредственным освобождением памяти.

Эта ошибка возникает только в коде строгого режима. В нестрогом коде операция просто возвращает false.

👉 @frontendInterview
Грег Сидельников упорядочил свойства по основной категории (положение, размерность, макеты, CSS-анимация и т. д.) и визуализировал их работу. Вместо бесконечных томов документации – две с половиной сотни иллюстраций помогут вам разобраться во всех тонкостях работы CSS.

👉 @frontendInterview
Регистр гласных

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

Пример:
C is alive! станет C Is AlIvE!

👉 @frontendInterview
Непрерывное развитие API

Для реализации API необходимо провести большую работу. Чрезмерное планирование может стать пустой тратой сил, а его недостаток приводит к катастрофическим последствиям. В этой книге вы получите решения, которые позволят вам распределить необходимые ресурсы и достичь требуемого уровня эффективности за оптимальное время.

👉 @frontendInterview
Что находится в this в фрагменте кода c картинки?

В приведенном коде значением this будет window. Механизм определения this в данном случае описывается стандартом ECMA-262.

Упрощенно говоря, чему будет равно this в функции определяется в месте ее вызова. Выражение вызова функции состоит из двух частей

1. выражение, результатом которого должна быть функция; назовем это подвыражением;
2. список аргументов для передачи в функцию.

Нотация — подвыражение(аргументы)
Вид этого подвыражения и определяет, чем будет this внутри функции. Если в этом подвыражении происходит обращение к полю объекта, то этот объект становится this (грубо говоря, мы вызываем поле объекта как функцию).

👉 @frontendInterview
Функция Math.random() возвращает число на промежутке
Anonymous Quiz
14%
от 0 до 100
2%
от -1 до 0
77%
от 0 до 1
7%
от -100 до 100
С помощью какой конструкции языка можно управлять потоком выполнения скрипта и отслеживать ошибки?

Это возможно с помощью конструкции try{}... catch{}
 try { 
var number = 9;
alert( number.toString(2) );
// ...
alert('Выполнено без ошибок!');
} catch(e) {
alert('Ошибка!');
}

Работает это так:
Выполняется код внутри блока try. Если в нём возникнет ошибка, то выполнение try прерывается, и управление прыгает в начало блока catch.

👉 @frontendInterview
На сколько вы хороши?

В вашем классе по был проведен тест и и вы его сдали. Напишите функцию, которая принимает массив из оценок по тесту и вернет true, если ваша оценка выше средней.

Примеры:
betterThanAverage([2, 3], 5) => true
betterThanAverage([100, 40, 34, 57, 29, 72, 57, 88], 75) => true


👉 @frontendInterview
Что из перечисленного относительная единица?
Anonymous Quiz
11%
px
7%
pt
79%
vh
3%
in
Почему вызов a(); происходит успешно, а вызов b(); выдает ошибку?

Функция а() инициализируется на этапе загрузки скрипта, как бы "всплывает вверх" а функция б инициализируется, когда объявляется переменная b

👉 @frontendInterview
Что такое глобальные переменные ? Как они создаются ? Какие проблемы связаны с использованием глобальных переменных?

Глобальная переменная - переменная, которая доступна (видима) во всем документе, в отличии от локальной (ограничена рамками блока программного кода, внутри которого она определена)

Пример:
 var myvar = 5; 
function myFunction(){
alert(myvar); // 5
}

Большинство JavaScript разработчиков избегает использования глобальных переменных. Одна из причин - возможный конфликт имен глобальных и локальных переменных. Так же код использующий глобальные переменные может быть тяжелее сопровождать и тестировать.

👉 @frontendInterview
Какой префикс используется для задания стилей в internet explorer?
Anonymous Quiz
23%
-webkit-
5%
-moz-
40%
-ms-
33%
-ie-
Что представляет собой механизм всплытия событий в JavaScript? Приведите пример.

После того, как событие сработает на элементе, оно также сработает на родителях, вверх по дереву DOM, если это событие нигде принудительно не прервут.

Приведу пример:
 <div> первый
<div> второй
<div> третий</div>
</div>
</div>

Клик по div "третий" вызывает событие onclick сначала на элементе "третий", затем на элементе "второй" и в конце концов на элементе "первый". Это и называется всплытием, событие всплывает от самого вложенного элемента вверх через родителей. Так будет продолжаться пока не достигнем объект Document и затем Window. Всплытие реализовано во всех браузерах, включая IE.

👉 @frontendInterview