Сергей Соколов:
Видимо я туповат для этого.
Если там только один и тот же символ везде – записывает номер этой диагонали и символ – в словарь diags. Если там встречаются разные символы, то записывается значение false - т.е. диагональ неинтересна уже
---------------------------------
Поставил одинаковые символы,в ваш пример,тот же результат
В отладчике смотрю никак не пойму как он обходит все диагонали в т.ч короткие
Я не понял вашего решения.
Ваше решение находит побочную и основную диагональ?
var arr = [
'o,x,x'.split(','),
'x,o,o'.split(','),
'o,x,o'.split(','),
];
var r, c, key, diags = {};
for(r = 0; r < arr.length; r++) {
for(c = 0; c < arr[r].length; c++) {
key = r + arr[r].length - 1 - c; // слева сверху вправо вниз
// key = r + c; // слева снизу вправо вверх
Видимо я туповат для этого.
Если там только один и тот же символ везде – записывает номер этой диагонали и символ – в словарь diags. Если там встречаются разные символы, то записывается значение false - т.е. диагональ неинтересна уже
---------------------------------
Поставил одинаковые символы,в ваш пример,тот же результат
В отладчике смотрю никак не пойму как он обходит все диагонали в т.ч короткие