Все методы работы с массивами с примерами и описаниями
let fruits = ['яблоко', 'банан'];
fruits.push('апельсин');
console.log(fruits); // ['яблоко', 'банан', 'апельсин']
fruits.push('киви', 'манго');
console.log(fruits); // ['яблоко', 'банан', 'апельсин', 'киви', 'манго']let fruits = ['яблоко', 'банан', 'апельсин'];
let last = fruits.pop();
console.log(last); // 'апельсин'
console.log(fruits); // ['яблоко', 'банан']let fruits = ['банан', 'апельсин'];
fruits.unshift('яблоко');
console.log(fruits); // ['яблоко', 'банан', 'апельсин']let fruits = ['яблоко', 'банан', 'апельсин'];
let first = fruits.shift();
console.log(first); // 'яблоко'
console.log(fruits); // ['банан', 'апельсин']let arr = ['a', 'b', 'c', 'd', 'e'];
// Удаление
arr.splice(2, 2); // ['a', 'b', 'e']
// Вставка
arr = ['a', 'b', 'c'];
arr.splice(1, 0, 'x', 'y'); // ['a', 'x', 'y', 'b', 'c']
// Замена
arr = ['a', 'b', 'c'];
arr.splice(1, 1, 'z'); // ['a', 'z', 'c']let numbers = [1, 2, 3, 4, 5];
numbers.forEach((num, index) => {
console.log(`Индекс ${index}: ${num}`);
});
// Индекс 0: 1
// Индекс 1: 2
// ...let numbers = [1, 2, 3, 4, 5];
let doubled = numbers.map(num => num * 2);
console.log(doubled); // [2, 4, 6, 8, 10]
let names = ['Иван', 'Мария', 'Петр'];
let greetings = names.map(name => `Привет, ${name}!`);
console.log(greetings); // ['Привет, Иван!', 'Привет, Мария!', 'Привет, Петр!']let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // [2, 4, 6, 8, 10]
let words = ['спринт', 'марафон', 'бег', 'прыжок'];
let longWords = words.filter(word => word.length > 5);
console.log(longWords); // ['спринт', 'марафон', 'прыжок']let arr = [1, 2, 3, 4];
let result = arr.flatMap(x => [x, x * 2]);
console.log(result); // [1, 2, 2, 4, 3, 6, 4, 8]
let sentences = ['Привет мир', 'JavaScript круто'];
let words = sentences.flatMap(s => s.split(' '));
console.log(words); // ['Привет', 'мир', 'JavaScript', 'круто']let fruits = ['яблоко', 'банан', 'апельсин', 'киви', 'манго'];
console.log(fruits.slice(1, 3)); // ['банан', 'апельсин']
console.log(fruits.slice(2)); // ['апельсин', 'киви', 'манго']
console.log(fruits.slice(-2)); // ['киви', 'манго']let arr = [1, 2, [3, 4], [5, [6, 7]]];
console.log(arr.flat()); // [1, 2, 3, 4, 5, [6, 7]]
console.log(arr.flat(2)); // [1, 2, 3, 4, 5, 6, 7]
console.log(arr.flat(Infinity)); // [1, 2, 3, 4, 5, 6, 7]let arr = [1, 2, 3, 4, 5];
arr.fill(0); // [0, 0, 0, 0, 0]
arr = [1, 2, 3, 4, 5];
arr.fill(9, 2, 4); // [1, 2, 9, 9, 5]
let zeros = new Array(5).fill(0); // [0, 0, 0, 0, 0]let arr = [1, 2, 3, 4, 5];
arr.copyWithin(0, 3); // [4, 5, 3, 4, 5]
arr = [1, 2, 3, 4, 5];
arr.copyWithin(1, 3, 4); // [1, 4, 3, 4, 5]let arr = [1, 2, 3, 4, 5];
let newArr = arr.with(2, 99);
console.log(newArr); // [1, 2, 99, 4, 5]
console.log(arr); // [1, 2, 3, 4, 5] - оригинал не изменилсяlet arr = [1, 2, 3, 4, 5];
let reversed = arr.toReversed();
console.log(reversed); // [5, 4, 3, 2, 1]
console.log(arr); // [1, 2, 3, 4, 5] - оригинал не изменилсяlet arr = [3, 1, 4, 1, 5, 9, 2, 6];
let sorted = arr.toSorted((a, b) => a - b);
console.log(sorted); // [1, 1, 2, 3, 4, 5, 6, 9]
console.log(arr); // [3, 1, 4, 1, 5, 9, 2, 6] - оригинал не изменилсяlet arr = ['a', 'b', 'c', 'd', 'e'];
let newArr = arr.toSpliced(2, 2, 'X', 'Y');
console.log(newArr); // ['a', 'b', 'X', 'Y', 'e']
console.log(arr); // ['a', 'b', 'c', 'd', 'e'] - оригинал не изменилсяlet fruits = ['яблоко', 'банан', 'апельсин', 'банан'];
console.log(fruits.indexOf('банан')); // 1
console.log(fruits.indexOf('киви')); // -1
console.log(fruits.indexOf('банан', 2)); // 3let numbers = [1, 2, 3, 2, 1];
console.log(numbers.lastIndexOf(2)); // 3
console.log(numbers.lastIndexOf(2, 2)); // 1let fruits = ['яблоко', 'банан', 'апельсин'];
console.log(fruits.includes('банан')); // true
console.log(fruits.includes('киви')); // false
let numbers = [1, 2, 3, NaN];
console.log(numbers.includes(NaN)); // true (в отличие от indexOf)let numbers = [5, 12, 8, 130, 44];
let found = numbers.find(num => num > 10);
console.log(found); // 12
let users = [
{name: 'Иван', age: 25},
{name: 'Мария', age: 30},
{name: 'Петр', age: 20}
];
let user = users.find(u => u.age > 25);
console.log(user); // {name: 'Мария', age: 30}let numbers = [5, 12, 8, 130, 44];
let index = numbers.findIndex(num => num > 10);
console.log(index); // 1let numbers = [5, 12, 8, 130, 44];
let found = numbers.findLast(num => num > 10);
console.log(found); // 44let numbers = [5, 12, 8, 130, 44];
let index = numbers.findLastIndex(num => num > 10);
console.log(index); // 4// Строки (по умолчанию)
let fruits = ['банан', 'яблоко', 'апельсин'];
fruits.sort();
console.log(fruits); // ['апельсин', 'банан', 'яблоко']
// Числа (требуется функция сравнения!)
let numbers = [40, 100, 1, 5, 25];
numbers.sort((a, b) => a - b);
console.log(numbers); // [1, 5, 25, 40, 100]
// По убыванию
numbers.sort((a, b) => b - a);
console.log(numbers); // [100, 40, 25, 5, 1]let arr = [1, 2, 3, 4, 5];
arr.reverse();
console.log(arr); // [5, 4, 3, 2, 1]let arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];
let arr3 = [7, 8, 9];
let combined = arr1.concat(arr2, arr3);
console.log(combined); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
// Можно добавлять и отдельные элементы
let result = arr1.concat(99, arr2);
console.log(result); // [1, 2, 3, 99, 4, 5, 6]let fruits = ['яблоко', 'банан', 'апельсин'];
console.log(fruits.join()); // 'яблоко,банан,апельсин'
console.log(fruits.join(', ')); // 'яблоко, банан, апельсин'
console.log(fruits.join(' + ')); // 'яблоко + банан + апельсин'
console.log(fruits.join('')); // 'яблокобананапельсин'let numbers = [2, 4, 6, 8, 10];
console.log(numbers.every(num => num % 2 === 0)); // true
let mixed = [2, 4, 5, 8];
console.log(mixed.every(num => num % 2 === 0)); // false
let ages = [25, 30, 35, 40];
console.log(ages.every(age => age >= 18)); // truelet numbers = [1, 3, 5, 7, 9];
console.log(numbers.some(num => num % 2 === 0)); // false
let mixed = [1, 3, 4, 7];
console.log(mixed.some(num => num % 2 === 0)); // true
let ages = [12, 15, 22, 8];
console.log(ages.some(age => age >= 18)); // true// Сумма чисел
let numbers = [1, 2, 3, 4, 5];
let sum = numbers.reduce((acc, num) => acc + num, 0);
console.log(sum); // 15
// Подсчет элементов
let fruits = ['яблоко', 'банан', 'яблоко', 'апельсин', 'банан', 'яблоко'];
let count = fruits.reduce((acc, fruit) => {
acc[fruit] = (acc[fruit] || 0) + 1;
return acc;
}, {});
console.log(count); // {яблоко: 3, банан: 2, апельсин: 1}
// Максимальное значение
let max = numbers.reduce((a, b) => Math.max(a, b));
console.log(max); // 5let arr = ['1', '2', '3', '4', '5'];
let result = arr.reduceRight((acc, val) => acc + val);
console.log(result); // '54321'
// Разворачивание массива
let numbers = [1, 2, 3, 4, 5];
let reversed = numbers.reduceRight((acc, val) => {
acc.push(val);
return acc;
}, []);
console.log(reversed); // [5, 4, 3, 2, 1]console.log(Array.isArray([1, 2, 3])); // true
console.log(Array.isArray('массив')); // false
console.log(Array.isArray({0: 'a', 1: 'b'})); // false
console.log(Array.isArray(null)); // false// Из строки
console.log(Array.from('Hello')); // ['H', 'e', 'l', 'l', 'o']
// Из Set
let set = new Set([1, 2, 3]);
console.log(Array.from(set)); // [1, 2, 3]
// С функцией преобразования
console.log(Array.from([1, 2, 3], x => x * 2)); // [2, 4, 6]
// Создание диапазона
console.log(Array.from({length: 5}, (_, i) => i + 1)); // [1, 2, 3, 4, 5]console.log(Array.of(1, 2, 3)); // [1, 2, 3]
console.log(Array.of(7)); // [7] (в отличие от new Array(7))
console.log(Array.of()); // []
console.log(Array.of(undefined)); // [undefined]let arr = [1, 2, 3, 4, 5];
console.log(arr.toString()); // '1,2,3,4,5'
let mixed = ['a', 'b', 'c'];
console.log(mixed.toString()); // 'a,b,c'let prices = [1000.5, 2000.75, 3000.25];
console.log(prices.toLocaleString('ru-RU', {
style: 'currency',
currency: 'RUB'
}));
// '1 000,50 ₽,2 000,75 ₽,3 000,25 ₽'
let dates = [new Date('2024-01-15')];
console.log(dates.toLocaleString('ru-RU')); // '15.01.2024, 00:00:00'let fruits = ['яблоко', 'банан', 'апельсин'];
console.log(fruits.length); // 3
// Изменение длины
fruits.length = 2;
console.log(fruits); // ['яблоко', 'банан']
// Очистка массива
fruits.length = 0;
console.log(fruits); // []let arr = ['a', 'b', 'c', 'd', 'e'];
console.log(arr.at(0)); // 'a'
console.log(arr.at(2)); // 'c'
console.log(arr.at(-1)); // 'e' (последний элемент)
console.log(arr.at(-2)); // 'd' (предпоследний)let arr = ['a', 'b', 'c'];
let iterator = arr.keys();
for (let key of iterator) {
console.log(key); // 0, 1, 2
}
console.log([...arr.keys()]); // [0, 1, 2]let arr = ['a', 'b', 'c'];
let iterator = arr.values();
for (let value of iterator) {
console.log(value); // 'a', 'b', 'c'
}
console.log([...arr.values()]); // ['a', 'b', 'c']let arr = ['a', 'b', 'c'];
let iterator = arr.entries();
for (let [index, value] of iterator) {
console.log(index, value);
}
// 0 'a'
// 1 'b'
// 2 'c'
console.log([...arr.entries()]); // [[0, 'a'], [1, 'b'], [2, 'c']]Введите массив (числа или слова через запятую) и попробуйте различные методы!
💻 Создано для изучения JavaScript методов массивов
📚 Все примеры рабочие и готовы к использованию
🔥 Совет: Практикуйтесь с интерактивной демонстрацией!