logo

Розбийте масив на фрагменти в JavaScript

Розбиття масиву на частини в JavaScript передбачає поділ масиву на менші масиви заданого розміру. Цей процес корисний для більш ефективного керування великими наборами даних або для обробки даних у менших, більш керованих частинах у програмі.

Методи розбиття масиву на частини:



Зміст

Використання методу JavaScript slice().

The метод slice (). повертає новий масив, що містить вибрані елементи. Цей метод вибирає елементи, що починаються з заданого початкового аргументу та закінчуються, але виключають заданий кінцевий аргумент.

Синтаксис:



array.slice(start, end);>

приклад: У цьому прикладі використовується шматочок() метод для поділу масиву на частини масиву. Цей метод можна використовувати багаторазово, щоб розділити масив будь-якого розміру.

Javascript
// Size of chunk let chunk = 4; // Input array let arr = [1, 2, 3, 4, 5, 6, 7, 8]; // Spiltted arrays let arr1 = arr.slice(0, chunk); let arr2 = arr.slice(chunk, chunk + arr.length); // Display Output console.log('Array1: ' + arr1 + '
Array2: ' + arr2);>

Вихід
Array1: 1,2,3,4 Array2: 5,6,7,8>

Використання методу JavaScript splice().

метод splice(). додає/вилучає елементи до/з масиву та повертає список вилучених елементів.

Синтаксис:



array.splice(index, number, item1, ....., itemN);>

приклад: У цьому прикладі використовується зрощення () метод для поділу масиву на частини масиву. Цей метод видаляє елементи з вихідного масиву. Цей метод можна використовувати багаторазово, щоб розділити масив будь-якого розміру.

приклад java do while
Javascript
// Size of aaray chunks let chunk = 2; // Input array let arr = [1, 2, 3, 4, 5, 6, 7, 8]; // Splitted arrays let arr1 = arr.splice(0, chunk); let arr2 = arr.splice(0, chunk); let arr3 = arr.splice(0, chunk); let arr4 = arr.splice(0, chunk); // Display output console.log('Array1: ' + arr1); console.log('Array2: ' + arr2); console.log('Array3: ' + arr3); console.log('Array4: ' + arr4);>

Вихід
Array1: 1,2 Array2: 3,4 Array3: 5,6 Array4: 7,8>

Використання Метод Lodash _.chunk().

У цьому підході ми використовуємо Метод Lodash _.chunk(). який повертає заданий масив у вигляді частин відповідно до заданого значення.

приклад: У цьому прикладі ми розбиваємо масив, передаючи розмір «3» у метод _.chunk(). Розмір блоку можна змінювати, а з функцією блоку можна використовувати масиви різних типів даних.

Javascript
// Requiring the lodash module // in the script let _ = require('lodash'); let arr = [1, 2, 3, 4, 5, 6,  'a', 'b', 'c', 'd']; console.log('Before: ', arr) // Making chunks of size 3 console.log('After: ', _.chunk(arr, 3))>

Вихід:

Before: [  1, 2, 3, 4, 5,  6, 'a', 'b', 'c', 'd' ] After: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 'a', 'b', 'c' ], [ 'd' ] ]>

Використання циклу для розділення масиву

У цьому підході ми повторюємо вихідний масив і розрізаємо його на шматки потрібного розміру, поміщаючи кожен фрагмент у новий масив.

приклад:

JavaScript
function chunkArray(array, chunkSize) {  const chunks = [];  for (let i = 0; i < array.length; i += chunkSize) {  chunks.push(array.slice(i, i + chunkSize));  }  return chunks; } const arr = [1, 2, 3, 4, 5, 6, 7, 8]; const chunkedArray = chunkArray(arr, 4); console.log(chunkedArray);>

Вихід
[ [ 1, 2, 3, 4 ], [ 5, 6, 7, 8 ] ]>

Використання Array.reduce()

Використання Array.reduce() , розбити масив на частини заданого розміру. Функція зменшення накопичує фрагменти на основі chunkSize, вставляючи нарізані частини масиву в масив шматків і повертає отриманий масив фрагментів.

приклад: У цьому прикладі ми розбиваємо масив на фрагменти заданого розміру за допомогою методу зменшення. Він виконує ітерації по масиву, вставляючи підмасиви визначеного розміру фрагмента в результуючий масив.

JavaScript
// Size of chunk let chunk = 4; // Input array let arr = [1, 2, 3, 4, 5, 6, 7, 8]; // Split array into chunks using reduce method let splittedArrays = arr.reduce((result, item, index) =>{ if (index % chunk === 0) { result.push(arr.slice(index, index + chunk));  } повернути результат; }, []); // Показати вихідні дані splittedArrays.forEach((subArray, index) => { console.log(`Array${index + 1}: ${subArray}`); });>

Вихід
Array1: 1,2,3,4 Array2: 5,6,7,8>

Використання Array.from() і Array.splice()

Цей метод передбачає створення нового масиву з оригінального масиву за допомогою Array.from() і подальше повторне видалення елементів з нього за допомогою splice() для формування блоків.

приклад: У цьому прикладі функція chunkArray розбиває масив на фрагменти заданого розміру. Він створює копію вихідного масиву та ітеративно витягує частини на основі розміру фрагмента, доки масив не стане порожнім.

JavaScript
function chunkArray(array, chunkSize) {  const chunks = [];  const copyArray = Array.from(array); // Create a copy of the original array  while (copyArray.length>0) { chunks.push(copyArray.splice(0, chunkSize));  } повертає блоки; } // Приклад використання: const arr = [1, 2, 3, 4, 5, 6, 'a', 'b', 'c', 'd']; const chunkSize = 3; const chunks = chunkArray(arr, chunkSize); console.log(chunks);>

Вихід
[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 'a', 'b', 'c' ], [ 'd' ] ]>