Какие структуры данных есть в js ?

Спросят с вероятностью 7%



Существует несколько основных структур данных, которые используются для хранения и управления данными. Рассмотрим их подробнее:



1️⃣Массивы (Arrays)

Что это: Упорядоченные списки элементов.

Зачем нужны: Для хранения коллекций данных, которые можно обрабатывать по индексу.

Как использовать:

          let fruits = ["Apple", "Banana", "Cherry"];

console.log(fruits[0]); // Apple



Пример использования: Хранение списка товаров в корзине интернет-магазина.



2️⃣Объекты (Objects)

Что это: Наборы пар "ключ-значение".

Зачем нужны: Для хранения данных в виде ассоциативных массивов, где ключами могут быть строки или символы.

Как использовать:

          let person = {

name: "John",

age: 30

};

console.log(person.name); // John



Пример использования: Хранение информации о пользователе.



3️⃣Map (Карты)

Что это: Коллекции пар "ключ-значение", где ключи могут быть любого типа.

Зачем нужны: Для хранения данных с уникальными ключами, с более гибкими возможностями по сравнению с объектами.

Как использовать:

          let map = new Map();

map.set('name', 'John');

map.set(1, 'one');

console.log(map.get('name')); // John



Пример использования: Хранение настроек с ключами различного типа.



4️⃣Set (Множества)

Что это: Коллекции уникальных значений.

Зачем нужны: Для хранения множества значений, где каждое значение уникально.

Как использовать:

          let set = new Set();

set.add(1);

set.add(1); // Значение не добавится, так как оно уже существует

console.log(set.size); // 1



Пример использования: Хранение уникальных тегов из списка статей.



5️⃣WeakMap (Слабые карты)

Что это: Коллекции пар "ключ-значение", где ключи являются объектами и имеют слабые ссылки.

Зачем нужны: Для хранения данных с автоматическим удалением неиспользуемых объектов.

Как использовать:

          let weakMap = new WeakMap();

let obj = {};

weakMap.set(obj, 'value');

obj = null; // Теперь объект может быть удалён из памяти



Пример использования: Хранение метаданных объектов без риска утечек памяти.



6️⃣WeakSet (Слабые множества)

Что это: Коллекции объектов, где каждое значение может быть удалено автоматически, если больше не используется.

Зачем нужны: Для хранения уникальных объектов с возможностью автоматического удаления.

Как использовать:

          let weakSet = new WeakSet();

let obj = {};

weakSet.add(obj);

obj = null; // Теперь объект может быть удалён из памяти



Пример использования: Отслеживание объектов без риска утечек памяти.



7️⃣String (Строки)

Что это: Последовательности символов.

Зачем нужны: Для хранения и обработки текстовых данных.

Как использовать:

          let greeting = "Hello, world!";

console.log(greeting.length); // 13



Пример использования: Хранение и манипулирование текстовой информацией, такой как имена пользователей или сообщения.



8️⃣Typed Arrays (Типизированные массивы)

Что это: Массивы, которые предоставляют массивы с фиксированной длиной для различных типов данных.

Зачем нужны: Для работы с бинарными данными и оптимизации производительности.

Как использовать:

          let buffer = new ArrayBuffer(16);

let int32View = new Int32Array(buffer);

int32View[0] = 42;

console.log(int32View[0]); // 42



Пример использования: Обработка данных в WebGL или манипулирование бинарными данными.



Есть массивы, объекты, Map, Set, WeakMap, WeakSet, строки и типизированные массивы. Они нужны для хранения и управления различными типами данных, от упорядоченных списков до ассоциативных массивов и уникальных наборов значений.



👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 1429 вопроса на Frontend разработчика. Ставь 👍 если нравится контент



🔐 База собесов | 🔐 База тестовых