У меня есть такой массив:
var a = ["ABC", "DEF", "HIJKL"];
и я хочу читать весь массив в цикле и каждый раз разделять каждый символ и сохранять их позицию. нравится :
A=1,1
B=1,2
C=1,3
D=2,1
E=2,2
F=2,3
.
.
.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Прокрутите массив и в цикле разделите каждый элемент, а затем переберите результат.
var arr = ["ABC", "DEF", "HIJKL"];
arr.forEach((val, i) => {
val.split('').forEach((val2, j) => {
console.info(`${val2}=${i+1},${j+1}`)
})
});Вывод отображается с помощью console. Но вы можете поместить его в переменную, в зависимости от того, что вы хотите.
for (var i = 0; i < a.length; i++) {
for (var j = 0; j < a[i].length; j++) {
console.info(a[i].charAt(j) + i + "," + j);
}
}
как вы думаете, что такое a[i,j]? Это действительный JS, но, скорее всего, это не то, что вы думаете. А зачем тебе .toString() струна? charAt() не может возвращать ничего, кроме строки. И alert() - плохая утилита, лучше используйте console для отладки / журналирования / и т. д.
a [i, j] - позиция в массиве во время выполнения цикла. i & j - счетчики цикла for, это самый простой JS, насколько это возможно.
a[i,j] === a[j]Я отредактировал свой ответ. Спасибо
Просто нужно пройти по элементам в массиве, и цикл для каждого символа в нем работает как шарм.
Код:
var a = ["ABC", "DEF", "HIJKL"];
a.map((item,index)=>{
for(i=0;i<item.length;i++)
{
console.info(item[i]+" = ",index+1,i+1);
}
})
Вывод :
A = 1 1
B = 1 2
C = 1 3
D = 2 1
E = 2 2
F = 2 3
H = 3 1
I = 3 2
J = 3 3
K = 3 4
L = 3 5
var a = ["ABC", "DEF", "HIJKL"];
a.map((item,index)=>{
for(i=0;i<item.length;i++)
{
console.info(item[i]+" = ",index+1,i+1);
}
})Надеюсь, поможет..! Спасибо.
~ Praz
Спасибо, дружище.
Я использовал классический стиль кодирования. пожалуйста, проверьте
var a = ["ABC", "DEF", "HIJKL"];
for(var i=0; i< a.length ; i++)
{
for(var y=0; y < a[i].length ; y++)
{
console.info(`${a[i][y]} = ${i+1},${y+1}`) ;
}
}Спасибо, дружище.
Если вы считаете, что этот ответ полезен, вы можете проголосовать за него или принять его в качестве ответа. Спасибо
хорошо @Simonare, но моя репутация 13 и мне нужно еще 2 :)
сейчас 18 :) с уважением
Опубликованный вопрос, похоже, вообще не включает любая попытка для решения проблемы. StackOverflow ожидает, что вы попробуй сначала решить свою проблему, поскольку ваши попытки помогают нам лучше понять, чего вы хотите. Измените вопрос, чтобы показать, что вы пробовали, и проиллюстрировать конкретное препятствие, с которым вы столкнулись с минимальный воспроизводимый пример. Для получения дополнительной информации см. Как спросить и возьмите тур.