Сначала составляете функцию перемножения двух матриц, затем рекурсивно умножаете матрицу на саму себя.
function multMatrix(A,B)
{
var rowsA = A.length,
rowsB = B.length,
colsB = B[0].length,
C = [];
for (var i=0; i<rowsA; i++)
{ C[i] = new Array(colsB); }
for (var k=0; k<colsB; k++)
{ for (var i=0; i<rowsA; i++)
{ var temp = 0;
for (var j=0; j<rowsB; j++)
{ temp += A[i][j]*B[j][k]; }
C[i][k] = temp;
}
}
return C;
}
function MatrixPow(n,A)
{
if (n==1) return A;
else return multMatrix(A,MatrixPow(n-1,A));
}