Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сделать 4 массива из одного (https://javascript.ru/forum/misc/84984-sdelat-4-massiva-iz-odnogo.html)

yaparoff 24.02.2023 18:12

Сделать 4 массива из одного
 
Есть массив данных
var arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28]

Из него нужно сделать четыре массива
var one =[2, 10, 18, 26];
var two =[4, 12, 20, 28];
var three =[6, 14, 22, 30];
var four =[8, 16, 24, 32];

Т.е. забирать значение через каждые три элемента
Как это сделать?

voraa 24.02.2023 18:59

var arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28];
var one = [];
var two = [];
var three = [];
var four = [];
const arrs = [one, two, three, four];
for (let i = 0; i < arr.length; i++)
    arrs[i%4].push(arr[i]);
    
console.log(one, two, three, four);

рони 26.02.2023 00:10

yaparoff,
let arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32];
        const divide = (arr, i = 4) => arr.reduce((ar, el, k) => {
            k %= i;
            ar[k] ? ar[k].push(el) : (ar[k] = [el])
            return ar
        }, [])
        const [one, two, three, four] = divide(arr);
        console.log(one, two, three, four);


Часовой пояс GMT +3, время: 16:11.