Что произойдет со страничкой в результате выполнения кода с картинки?
Ничего особенного. Задачи будут добавляться в цикл событий, но они не вызовут ни переполнения стека, ни бесконечной очереди, которая затормозит весь сайт. Так как макротаски после выполнения пропускают один цикл для отрисовки контента и выполнения микротасков, в отличие от микротасков, которые выполняются все в очереди перед тем, как передать управление следующему пункту в цикле событий.
👉 @frontendInterview
Ничего особенного. Задачи будут добавляться в цикл событий, но они не вызовут ни переполнения стека, ни бесконечной очереди, которая затормозит весь сайт. Так как макротаски после выполнения пропускают один цикл для отрисовки контента и выполнения микротасков, в отличие от микротасков, которые выполняются все в очереди перед тем, как передать управление следующему пункту в цикле событий.
foo() {
return Promise.resolve(1).then(foo);
}
foo();
Выполнение данного кода вызовет затормаживание интерфейса, т.к. при выполнении одного микротаска в очередь добавляется новый микротаск, который сразу же должен выполниться, без передачи управления другому пункту цикла событий.👉 @frontendInterview
Какое изначальное значение у CSS свойства flex-grow?
Anonymous Quiz
35%
auto
31%
0
12%
initial
19%
1
4%
unset
Какие типы данных представлены в javanoscript?
Чтобы узнать тип переменной JavaScript, мы можем использовать оператор typeof.
String – представляет собой серию символов и записывается в кавычках. Строку можно представить в одинарных или двойных кавычках.
Number – представляет собой число и может быть записано с десятичными знаками или без них.
BigInt – используется для хранения чисел, превышающих ограничение типа данных Number. Он может хранить большие целые числа и представлен добавлением «n» к целочисленному литералу.
Boolean – представляет собой логическую сущность и может иметь только два значения: истина или ложь. Логические значения обычно используются для условного тестирования.
Undefined – когда переменная объявлена, но не назначена, она имеет значение undefined, и ее тип также не определен.
Null – представляет несуществующее или недопустимое значение.
typeof null равен "object" и это нужно учитывать в проверках
Symbol – это новый тип данных, представленный в версии JavaScript для ES6. Он используется для хранения анонимного и уникального значения.
Object – используется для хранения коллекции данных.Важно помнить, что любой тип данных, который не является примитивным типом данных, относится к типу объекта в javanoscript.
Array – это не отдельный тип данных, на самом деле это Object.
👉 @frontendInterview
Чтобы узнать тип переменной JavaScript, мы можем использовать оператор typeof.
String – представляет собой серию символов и записывается в кавычках. Строку можно представить в одинарных или двойных кавычках.
Number – представляет собой число и может быть записано с десятичными знаками или без них.
BigInt – используется для хранения чисел, превышающих ограничение типа данных Number. Он может хранить большие целые числа и представлен добавлением «n» к целочисленному литералу.
Boolean – представляет собой логическую сущность и может иметь только два значения: истина или ложь. Логические значения обычно используются для условного тестирования.
Undefined – когда переменная объявлена, но не назначена, она имеет значение undefined, и ее тип также не определен.
Null – представляет несуществующее или недопустимое значение.
typeof null равен "object" и это нужно учитывать в проверках
Symbol – это новый тип данных, представленный в версии JavaScript для ES6. Он используется для хранения анонимного и уникального значения.
Object – используется для хранения коллекции данных.Важно помнить, что любой тип данных, который не является примитивным типом данных, относится к типу объекта в javanoscript.
Array – это не отдельный тип данных, на самом деле это Object.
👉 @frontendInterview
New Perspectives HTML5 and CSS3, 7th Edition (2017)
Седьмое издание этой популярной книги расскажет вам о новых возможностях, появившихся в HTML5 и CSS3. Если вы хотите развить свой профессиональный опыт по созданию веб-приложений, то в этой книге вы найдёте задания к каждой главе, а также цели и проблемы, которые стоят перед вами как разработчиком в той или иной ситуации.
👉 @frontendInterview
Седьмое издание этой популярной книги расскажет вам о новых возможностях, появившихся в HTML5 и CSS3. Если вы хотите развить свой профессиональный опыт по созданию веб-приложений, то в этой книге вы найдёте задания к каждой главе, а также цели и проблемы, которые стоят перед вами как разработчиком в той или иной ситуации.
👉 @frontendInterview
Динамическая генерация цвета
Создайте функцию, которая будет генерировать цвет в hex формате.
Примеры:
👉 @frontendInterview
Создайте функцию, которая будет генерировать цвет в hex формате.
Примеры:
#ffffff
#25a403
#000001👉 @frontendInterview
Getting MEAN with Mongo, Express, Angular, and Node (2019)
Книга научит вас разрабатывать веб-приложения, используя стек MEAN. Во время чтения в начале вы сделаете статический сайт при помощи Express и Node, далее интегрируете базу данных MongoDB, создадите API и добавите систему аутентификации. Попутно вы получите бесчисленное множество профессиональных советов по созданию качественных веб-приложений.
👉 @frontendInterview
Книга научит вас разрабатывать веб-приложения, используя стек MEAN. Во время чтения в начале вы сделаете статический сайт при помощи Express и Node, далее интегрируете базу данных MongoDB, создадите API и добавите систему аутентификации. Попутно вы получите бесчисленное множество профессиональных советов по созданию качественных веб-приложений.
👉 @frontendInterview
Как найти сумму элементов массива, если вложенность массива неизвестна?
Для этого можно использовать рекурсию.
👉 @frontendInterview
Для этого можно использовать рекурсию.
function arraySum(arr) {
let sum = 0;
arr.map((item) => {
if (Array.isArray(item)) {
sum += arraySum(item);
} else {
sum += item;
}
});
return sum;
}
console.log(arraySum([[1, 2, [3, 4]], [9], [10, 12]]));👉 @frontendInterview
Перечислите специальные числовые значения в JS.
В JavaScript имеется предопределённая глобальная переменная Infinity. Она хранит специальное значение обозначающее бесконечность – Infinity. Эта переменная доступна только для чтения.
Значение Infinity можно получить:
1. В результате деления числа на 0.
2. Если результат вычислений, не попадает в допустимый диапазон чисел JavaScript.
3. Любое отрицательное число, которое не может быть представлено, считается отрицательной бесконечностью (-Infinity), а положительное – положительной бесконечностью (Infinity).
Значение NaN используется для обозначения математической ошибки, которая возникает в том случае, если математическая операция не может быть совершена:
👉 @frontendInterview
В JavaScript имеется предопределённая глобальная переменная Infinity. Она хранит специальное значение обозначающее бесконечность – Infinity. Эта переменная доступна только для чтения.
Значение Infinity можно получить:
1. В результате деления числа на 0.
2. Если результат вычислений, не попадает в допустимый диапазон чисел JavaScript.
3. Любое отрицательное число, которое не может быть представлено, считается отрицательной бесконечностью (-Infinity), а положительное – положительной бесконечностью (Infinity).
alert(123 / 0); // Infinity
alert(-12345 / 0); // -Infinity
alert(1e500); // Infinity
alert(1 - 1e500); // -Infinity
Также, в JavaScript имеется предопределённая глобальная переменная NaN. Она хранит специальное значение NaN. Эта переменная доступна только для чтения.Значение NaN используется для обозначения математической ошибки, которая возникает в том случае, если математическая операция не может быть совершена:
var a = 10, b = "текст";
document.write(a - b); // Операнд не может быть преобразован в число
document.write(0 / 0); // Деление нуля на нуль👉 @frontendInterview
Через дорогу
Вдоль дороги, слева и справа стоят дома. Известно, по какому принципу они нумеруются. С левой стороны находятся нечетные по возрастанию. С правой - четные по убыванию.
Примеры:
👉 @frontendInterview
Вдоль дороги, слева и справа стоят дома. Известно, по какому принципу они нумеруются. С левой стороны находятся нечетные по возрастанию. С правой - четные по убыванию.
1| |6
3| |4
5| |2
Ваша задача, по заданному номеру дома и длине улицы определить номер дома напротив.Примеры:
overTheRoad(address, n)
overTheRoad(1, 3) = 6
overTheRoad(3, 3) = 4
overTheRoad(2, 3) = 5
overTheRoad(3, 5) = 8👉 @frontendInterview
Какое предназначение файла package-lock.json?
package-lock.json автоматически создается для любых операций, когда npm изменяет дерево node modules или package.json. Он описывает точное дерево, которое было сгенерировано, так что последующие установки могут генерировать идентичные деревья, независимо от промежуточных обновлений зависимостей.
👉 @frontendInterview
package-lock.json автоматически создается для любых операций, когда npm изменяет дерево node modules или package.json. Он описывает точное дерево, которое было сгенерировано, так что последующие установки могут генерировать идентичные деревья, независимо от промежуточных обновлений зависимостей.
👉 @frontendInterview
Что такое запросы между источниками и CDN?
Запросы из разных источников, отправленные в другой домен (даже субдомен), протокол или порт требуют специальных заголовков с удаленной стороны. Эта политика называется «CORS»: совместное использование ресурсов между источниками.
CDN (сеть доставки контента) – это группа серверов, расположенных во многих местах. Эти серверы хранят дублированные копии данных, чтобы серверы могли выполнять запросы данных в зависимости от того, какие серверы находятся ближе всего к соответствующим конечным пользователям. CDN обеспечивают быстрое обслуживание и меньше подвержены влиянию высокого трафика.
👉 @frontendInterview
Запросы из разных источников, отправленные в другой домен (даже субдомен), протокол или порт требуют специальных заголовков с удаленной стороны. Эта политика называется «CORS»: совместное использование ресурсов между источниками.
CDN (сеть доставки контента) – это группа серверов, расположенных во многих местах. Эти серверы хранят дублированные копии данных, чтобы серверы могли выполнять запросы данных в зависимости от того, какие серверы находятся ближе всего к соответствующим конечным пользователям. CDN обеспечивают быстрое обслуживание и меньше подвержены влиянию высокого трафика.
👉 @frontendInterview