Member 14105304 Ответов: 1

Как запустить функцию массивов


у меня есть 3 массива и функция(я не знаю, как тоже получить доступ ко всем из них, чтобы получить прекрасный вывод для функции:

const input1 = document.getElementById('item1');
const input2 = document.getElementById('item2');
const input3 = document.getElementById('item3');

const data1 = ["1", "2", "3"];
const data2 = ["a", "b", "c"];
const data3 = ["a1", "b2", "c3"];

const maker = (???what write inside???) => {
console.log(data[i] + " + " + data2[i] + " = " + data3[i]);
}

// i dont know how to access all the arrays at once.. :C
data1.forEach(number => {
    maker(number);
});


я действительно буду рад, если кто - нибудь мне поможет.
здесь я сильно застрял.

Что я уже пробовал:

почитал немного в гугле, но так и не нашел директивного ответа.

1 Ответов

Рейтинг:
2

Richard Deeming

Не совсем понятно, что вы пытаетесь сделать, но что-то вроде этого будет работать:

const maker = i => console.log(data[i], " + ", data2[i], " = ", data3[i]);

data1.forEach((_, index) => maker(index));

Второй аргумент в пользу forEach обратный вызов - это индекс элемента в массиве.
Array.prototype.forEach() - JavaScript | MDN[^]

Однако это зависит от того, что все три массива имеют одинаковое количество элементов. В зависимости от ваших требований, возможно, имеет смысл иметь вместо этого один массив:
const data = [
    { op1: "1", op2: "a", result: "a1" },
    { op1: "2", op2: "b", result: "b2" },
    { op1: "3", op2 : "c", result: "c3" }
];

data.forEach(item => console.log(item.op1, " + ", item.op2, " = ", item.result));