JS собеседования – Telegram
JS собеседования
470 subscribers
108 photos
108 links
Подготовка к собеседованиям по JavaScript

Еще больше разобранных вопросов на сайте https://frontview-it.ru

Frontend собеседования - @frontview_it
Frontend работа - @frontview_vacancies
Все IT вакансии - @frontview_all_vacancies
Download Telegram
Строгий режим ('use strict') — это способ включения более строгих правил синтаксиса, который помогает избежать распространённых ошибок, таких как использование необъявленных переменных. Он улучшает производительность кода и делает его более безопасным, отключая некоторые устаревшие функции и предотвращая использование небезопасных конструкций.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81🔥1
💡alert — это встроенная функция JavaScript, используемая для отображения модального окна с сообщением. Она приостанавливает выполнение скрипта до тех пор, пока пользователь не закроет окно.

Пример использования:


alert("Hello, World!"); // Отображает модальное окно с сообщением "Hello, World!"


➡️ Окно alert содержит только текст сообщения и кнопку "OK". Оно полезно для простых уведомлений, но не подходит для сложных взаимодействий с пользователем, так как не позволяет получить ввод данных.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🤩2
Цикл while выполняет блок кода до тех пор, пока заданное условие истинно. Он проверяет условие перед каждой итерацией, что позволяет контролировать количество выполнений цикла.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
🔥 Контекст this определяется способом вызова функции. В глобальной области видимости this ссылается на глобальный объект (в браузере это window). В методах объекта this указывает на сам объект.

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


const obj = {
name: "Alice",
greet() {
console.log(`Hello, ${this.name}`);
}
};

obj.greet(); // Выведет: Hello, Alice


Использование call, apply или bind позволяет явно задавать контекст this.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2
Для проверки, является ли объект экземпляром определённого класса, используется оператор instanceof. Этот оператор возвращает true, если объект принадлежит указанному классу или его прототипной цепочке.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51🤔1
Spread-оператор позволяет разворачивать элементы массива или свойства объекта. Он упрощает работу с массивами и объектами, делая код более читаемым и лаконичным.

1️⃣Для массивов spread используется для копирования или объединения:

const arr1 = [1, 2, 3];
const arr2 = [...arr1, 4, 5]; // Копирование и добавление элементов


2️⃣ Для объектов spread помогает объединять или клонировать объекты:

const obj1 = { a: 1, b: 2 };
const obj2 = { ...obj1, c: 3 }; // Копирование и добавление свойств


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101🤔1👀1
Интернационализация (i18n) — это процесс подготовки веб-приложения к поддержке различных языков и региональных настроек, включая адаптацию форматов даты, времени и чисел. Локализация (l10n) — это адаптация уже интернационализированного приложения для конкретного языка или региона, включая перевод текста и настройку культурных особенностей.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
➡️ Объект в JavaScript — это коллекция свойств, где каждое свойство состоит из ключа и значения. Объекты используются для хранения данных и функциональности.


// Создание объекта
const person = {
name: 'Alice',
age: 30
};

// Добавление нового свойства
person.job = 'Engineer';

// Альтернативный способ добавления свойства
person['city'] = 'Moscow';


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
Параметры по умолчанию в функции позволяют задавать значения, которые будут использоваться, если аргументы не переданы или равны undefined. Это упрощает код, устраняя необходимость проверять наличие значений и присваивать их вручную внутри функции.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
🟠 Math.random() возвращает псевдослучайное число с плавающей точкой в диапазоне от 0 (включительно) до 1 (исключительно). Это полезно для генерации случайных чисел в различных сценариях, например, для игр или тестирования.

Чтобы получить случайное число в определенном диапазоне, можно умножить результат на нужное значение и округлить. Например, для получения случайного целого числа от 1 до 10:


const randomNumber = Math.floor(Math.random() * 10) + 1; // Генерация случайного числа от 1 до 10


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
null представляет собой специальное значение, которое указывает на отсутствие какого-либо объекта или значение "ничего". Оно часто используется для явного указания на то, что переменная должна быть пустой или не иметь значения.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73
➡️ Шаблонные литералы — это строковые литералы, заключенные в обратные кавычки, которые позволяют встраивать выражения и многострочные строки. Они поддерживают интерполяцию с помощью синтаксиса ${expression}, что упрощает создание динамических строк.


const name = "Alice";
const greeting = `Hello, ${name}!`; // Интерполяция переменной в строку


Шаблонные литералы делают код более читаемым и удобным для работы с динамическими данными.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2
Оператор typeof возвращает строку, указывающую тип переданного значения. Он полезен для проверки типов переменных и может возвращать такие значения, как "string", "number", "boolean", "object", "function", "undefined" и "symbol".

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
🟥 Для парсинга JSON используется встроенный метод JSON.parse(). Этот метод принимает строку в формате JSON и преобразует ее в JavaScript-объект. Важно, чтобы строка была корректно сформирована, иначе может возникнуть ошибка.

Для работы с JSON также можно использовать JSON.stringify(), чтобы преобразовать объект обратно в строку JSON.


const jsonString = '{"name": "Alice", "age": 25}'; // JSON-строка

try {
const user = JSON.parse(jsonString); // Парсинг строки в объект
console.log(user.name); // Доступ к свойству "name"
console.log(user.age); // Доступ к свойству "age"
} catch (error) {
// Обработка ошибки при парсинге
console.error("Ошибка в парсинге JSON:", error);
}


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
Доступ к элементу массива по индексу осуществляется через указание имени массива и индекса в квадратных скобках. Индексация начинается с нуля, то есть первый элемент массива имеет индекс 0.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
SetInterval — функция, которая позволяет выполнять код с заданным интервалом времени. Она принимает два аргумента: функцию, которая будет выполняться, и интервал времени в миллисекундах между вызовами. Функция будет вызываться бесконечно, пока не будет остановлена с помощью clearInterval.


let counter = 0;
const intervalId = setInterval(() => {
counter++;
console.log(`Counter: ${counter}`);
if (counter >= 5) {
clearInterval(intervalId); // Остановка интервала
}
}, 1000);


В этом примере код внутри setInterval выполняется каждую секунду. Когда значение counter достигает 5, интервал останавливается с помощью clearInterval. Это полезно для задач, требующих периодического выполнения, таких как обновление данных или анимации.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
Инкремент (++) и декремент (--) — это операторы, которые увеличивают или уменьшают значение переменной на единицу. Инкремент добавляет 1, а декремент вычитает 1, и они могут использоваться как в префиксной, так и в постфиксной форме, что влияет на порядок выполнения операции.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
Область видимости переменной определяет, где эта переменная может быть использована. В JS есть три типа областей видимости: глобальная, функциональная и блочная.

Глобальная область видимости — переменные, объявленные вне функций или блоков, доступны везде в коде. Функциональная область видимости — переменные, объявленные внутри функции, доступны только в её пределах. Блочная область видимости появилась с let и const — переменные, объявленные внутри блока {}, доступны только в этом блоке.


const globalVar = "I'm global"; // Глобальная область видимости

function example() {
const functionVar = "I'm in function"; // Функциональная область видимости
if (true) {
const blockVar = "I'm in block"; // Блочная область видимости
}
console.log(blockVar); // Ошибка: blockVar не определена
}


Использование var создаёт переменные с функциональной областью видимости, а let и const — с блочной. Это важно учитывать для предотвращения ошибок и утечек переменных.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101
Оператор in проверяет наличие свойства в объекте или его цепочке прототипов. Если свойство существует, возвращается true, иначе — false.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
▶️Строгое сравнение в JavaScript выполняется с использованием операторов === и !==. Оно проверяет как значения, так и типы данных. Если типы или значения не совпадают, результат будет false.


5 === '5'; // false, так как разные типы (number и string)
5 === 5; // true, одинаковые значения и типы


В отличие от нестрогого сравнения (== и !=), которое может приводить типы данных для сравнения, строгое сравнение исключает неявные преобразования, что делает его более предсказуемым и безопасным.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
Регулярные выражения — это инструмент для поиска и манипуляции текстом на основе шаблонов. Они используются для проверки строк, поиска совпадений, замены текста и извлечения данных с помощью специального синтаксиса.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61