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
Объект — это коллекция пар "ключ-значение", где ключи являются строками (или символами), а значения могут быть любого типа. Объекты позволяют хранить и управлять данными более структурированно.

🔹 Создать объект можно несколькими способами. Наиболее распространенный способ — использовать литерал объекта:


const person = {
name: 'Alice', // ключ 'name' со значением 'Alice'
age: 30, // ключ 'age' со значением 30
greet: function() { // метод объекта
console.log('Hello!');
}
};


🔹 Также объект можно создать с помощью конструктора Object:


const car = new Object();
car.make = 'Toyota';
car.model = 'Camry';


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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍111
Метод shift удаляет первый элемент из массива и возвращает его, изменяя длину массива. Метод unshift добавляет один или несколько элементов в начало массива и возвращает новую длину массива.

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

▶️ null отличается от undefined, который указывает на переменную, объявленную, но не инициализированную. Использование null помогает явно показать, что значение переменной будет установлено позже.

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

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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7💯1
➡️ Для получения текущей даты и времени используется объект Date. Создание нового объекта Date без аргументов возвращает текущую дату и время.


const now = new Date(); // Создание объекта Date с текущей датой и временем

console.log(now.toString()); // Выводит полную строку с датой и временем
console.log(now.toLocaleDateString()); // Выводит текущую дату в локальном формате
console.log(now.toLocaleTimeString()); // Выводит текущее время в локальном формате


➡️ Методы toLocaleDateString() и toLocaleTimeString() позволяют форматировать дату и время в соответствии с локальными настройками.

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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
Длина массива может быть получена с помощью свойства length, которое возвращает количество элементов в массиве. Важно помнить, что length - это свойство, а не метод, поэтому круглые скобки после него не нужны.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥2
📌 Проверка наличия свойства в объекте может быть выполнена с помощью оператора in или метода hasOwnProperty().

▶️ Оператор in проверяет наличие свойства в объекте или его прототипе, тогда как hasOwnProperty() проверяет только собственные свойства объекта.

const obj = { name: 'Alice', age: 30 };

// Использование оператора in
console.log('name' in obj); // true

// Использование hasOwnProperty
console.log(obj.hasOwnProperty('age')); // true


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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
📝 Наследование в ES6-классах позволяет создавать новый класс на основе существующего, унаследовав его свойства и методы. Это достигается с помощью ключевого слова extends.


// Базовый класс Animal
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} издает звук.`);
}
}

// Класс Dog наследует Animal
class Dog extends Animal {
speak() {
console.log(`${this.name} лает.`);
}
}

const dog = new Dog('Бобик');
dog.speak(); // Бобик лает.


Метод speak в классе Dog переопределяет метод из Animal, демонстрируя полиморфизм.

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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥3
📌 Оператор switch используется для выполнения различных действий на основе различных условий. Он сравнивает выражение с метками case и выполняет соответствующий блок кода.


const fruit = 'apple';

switch (fruit) {
case 'banana':
console.log('Banana is selected');
break;
case 'apple':
console.log('Apple is selected');
break;
case 'orange':
console.log('Orange is selected');
break;
default:
console.log('No fruit selected');
break;
}


✔️ В этом примере, если fruit равно 'apple', будет выполнен соответствующий блок кода. break предотвращает выполнение последующих блоков.

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

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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3
🔘Для проверки типа переменной используется оператор typeof. Он возвращает строку, указывающую тип операнда.

const number = 42;
const text = "Hello, world!";
const isTrue = true;

console.log(typeof number); // "number"
console.log(typeof text); // "string"
console.log(typeof isTrue); // "boolean"


🔘Для массивов и объектов typeof возвращает "object". Для проверки массива можно использовать Array.isArray().

const array = [1, 2, 3];
console.log(typeof array); // "object"
console.log(Array.isArray(array)); // true


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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍111
Метод Math.floor() округляет число вниз до ближайшего целого. Это полезно, когда требуется избавиться от дробной части числа, оставив только целую часть.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
📍 Работа с числами в JavaScript может привести к ошибкам округления из-за особенностей представления чисел с плавающей запятой. Для предотвращения таких ошибок рекомендуется использовать библиотеку Big.js или Decimal.js, которые обеспечивают точные вычисления.

Если использование библиотек невозможно, можно применять метод умножения и последующего деления для работы с целыми числами:


// Пример: сложение 0.1 и 0.2
const sum = (0.1 * 10 + 0.2 * 10) / 10; // Результат: 0.3


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

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

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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
✔️ Анонимная функция — это функция, которая не имеет имени и часто используется для кратковременных задач. Такие функции создаются с помощью ключевого слова function или стрелочных функций =>, и обычно применяются в качестве аргументов для других функций или для создания замыканий.


// Анонимная функция в качестве аргумента
setTimeout(function() {
console.log("Hello, World!");
}, 1000);


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

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


// Объект с данными о пользователе
const user = {
name: "Alice",
age: 30,
city: "Moscow"
};

// Перебор свойств объекта
for (let key in user) {
console.log(key + ": " + user[key]); // Выводит каждую пару ключ-значение
}


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

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

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

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


const str = "Hello, World!";
const length = str.length; // Длина строки "Hello, World!" равна 13
console.log(length); // Выводит 13


▶️Это свойство полезно при работе с текстовыми данными, когда необходимо узнать размер строки для дальнейшей обработки или проверки условий.

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

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
Оператор побитового И (&) выполняет логическую операцию И над соответствующими битами двух чисел, возвращая 1 только если оба бита равны 1. Оператор побитового ИЛИ (|) выполняет логическую операцию ИЛИ, возвращая 1, если хотя бы один из соответствующих битов равен 1.

✈️ JS собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
➡️ CORS (Cross-Origin Resource Sharing) — это механизм безопасности, который позволяет ограничивать доступ веб-страниц к ресурсам на других доменах. Он предотвращает выполнение потенциально опасных запросов с одного домена на другой, если это не разрешено сервером.

➡️ Когда браузер делает запрос на другой домен, сервер должен отправить заголовок Access-Control-Allow-Origin, чтобы указать, какие домены могут получить доступ к ресурсам. Например:

Access-Control-Allow-Origin: https://example.com


Если заголовок отсутствует или домен не совпадает, браузер блокирует запрос.

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

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

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