const result = ind.reduce((acc, col) => {
arr.forEach((n, i) => {
acc[i].push(i ? n.filter((m, j) => arr[0][j] === col) : col);
});
return acc;
}, arr.map(() => []));
const indObj = Object.fromEntries(ind.map((n, i) => [ n, i ]));
const result = arr.reduce((acc, n, i) => (
i && n.forEach((m, j) => acc[i][indObj[arr[0][j]]].push(m)),
acc
), arr.map((_, i) => ind.map(n => i ? [] : n)));
const result = Object
.entries(arr.reduce((acc, n, i) => ((acc[n] = acc[n] || []).push(i), acc), {}))
.map(([ label, indexes ]) => indexes.length > 1 ? { label, indexes } : label);
есть массив индексов[0, 3, 1, empty, 2]
<...>
должно быть -[100, 400, 200, empty, 300]
for (let i = 0; i < indexes.length; i++) {
if (indexes.hasOwnProperty(i)) {
arr.push(arr[indexes[i]]);
} else {
arr.length++;
}
}
arr.splice(0, arr.length - indexes.length);
arr.splice(0, arr.length, ...indexes.map(i => arr[i]));
function sum(args, func) {
const result = [];
const length = Math.max(...args.map((item) => item.length));
for (let i = 0; i < length; ++i) {
const arr = args.map((item) => item[i]).filter(Boolean);
const maxLength = Math.max(...arr.map((item) => item.length));
result.push([]);
for (let j = 0; j < maxLength; ++j) {
result[i].push(arr.map((item) => item[j]).filter(Number).reduce(func));
}
}
return result;
}
/* сложить */
sum([arr1, arr2, arr3], (acc, curr) => acc + curr);
/* умножить */
sum([arr1, arr2, arr3], (acc, curr) => acc * curr);
var arr1 = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]];
var arr2 = [[10, 20, 30, 40], [50, 60, 70, 80], [90, 100, 110, 120]];
var arr3 = [[100, 200, 300, 400], [500, 600, 700, 800], [900, 1000, 1100, 1200]];
function summ_array(...arrs){
return arrs.reduce((acc,arr)=>{
if( Array.isArray(arr))
arr.forEach((subarr, i)=>{
if(!Array.isArray(acc[i]))
acc[i] = []
if( Array.isArray(subarr))
subarr.forEach((v, j)=>{
if(!acc[i][j])
acc[i][j] = 0;
acc[i][j]+=v;
});
});
return acc;
},[]);
}
var summ = summ_array(arr1, arr2, arr3);
console.log(summ);
let inputValue = '';
// затем на onchange инпута записываете значение в переменную
const inputElement = document.querySelector('.radio-input');
inputElement.addEventListener('change', function() {
inputValue = this.value;
});
// дальнейший код будет брать значение из замыкания
const someFunction = () => {
console.log(inputValue);
};
// Элемент на который наводим курсор
const hoverElement = document.querySelector('.hover_element');
// Элемент который скрываем
const hideElement = document.querySelector('.hide_element');
hoverElement.addEventListener('mouseover', () => hideElement.style.display = 'block');
hoverElement.addEventListener('mouseout', () => hideElement.style.display = 'none');
Есть ли способ реализации такого без jquery и плагинов?
var str = '678'.split('');
var input = '679'.split('');
var result = '';
input.map((w,e) => {if (w === str[e]) {function one() {result+=1} return one()} else {function two() {result +=2} return two()}})
inp.dispatchEvent(new Event('input'));