Показать сообщение отдельно
  #4 (permalink)  
Старый 20.12.2017, 10:19
Аватар для void()
Профессор
Отправить личное сообщение для void() Посмотреть профиль Найти все сообщения от void()
 
Регистрация: 11.08.2017
Сообщений: 208

Можно попробовать каждую строку бить на три части. Если остаток от деления на 3 == 0, то передать в функцию индекс строки и текущий индекс элемента.

for(var j = 0; j <= 9; j++){
			arr[j].forEach(function(item, i) {
				if(i % 3 == 0 && i != 0){
					myFunc([arr[j], i]); 
				}
			});
		}


И в функции на основе принятых параметров сформировать массив, в котором проверить на совпадения. Тем самым уже проверены строки, осталось дело за столбцами.

function myFunc(arr){
			var arr2 = [arr[0][arr[1]], arr[0][arr[1]-1], arr[0][arr[1]-2]];
			var uni = arr2.filter(function(elem, pos) {
				return arr2.indexOf(elem) == pos;
			});

			if(uni.length < 3){
				alert('Найдено совпадение');
			}
		}


Чуть криво сделал, это просто идея, мож пригодится или натолкнет на мысль)
Ответить с цитированием