var direction = [[1,0],[0,1],[-1,0],[0,-1],[1,1],[-1,-1],[1,-1],[-1,1]];
var input = ['t h i s','w a t s','o a h g','f g d t'];
var i,j,k,l,m,n;
var len;
var results = {};
var matrix = [];
for (i = 0, len = input.length;i < len; i++) {
matrix.push(input[i].split(' '));
}
console.log(matrix);
var words = ['this', 'two', 'fat', 'that'];
for (j = 0; j < matrix.length; j++) {
for (k = 0; k < matrix[j].length;k++) {
var letter = matrix[j][k];
console.log('letter: ' + letter);
for (m = 0; m < direction.length;m++) {
var dirc = direction[m];
console.log('current direction is: ' + dirc);
for (l = 0; l < words.length; l++) {
var word = words[l];
if (word[0] == letter) {
console.log(word + ' first character: ' + word[0]);
var x = j, y = k;
var temp = [];
for (n = 0; n < word.length && x >= 0 && x < matrix.length &&
y >= 0 && y < matrix[j].length && word[n] == matrix[x][y];
n++, x += dirc[0], y += dirc[1]) {
console.log('matrix[' + x +']['+ y +']: ' + matrix[x][y]);
temp.push([x,y]);
}
if (word.length == temp.length) {
results[word] = temp;
}
}
}
}
}
}
for (var z = 0; z < words.length; z++) {
console.log(words[z] + '\' result: ')
console.log(results[words[z]]);
}