const arr = [
[ 2, 7, 2 ],
[ 2, 5, 4 ],
[ 2, 1, 5 ],
[ 3, 1, 2 ],
];
const [ val, iRow, iCol ] = arr
.map((n, i) => n.reduce((min, m, j) => min[0] <= m ? min : [ m, i, j ], [ Infinity, -1 ]))
.reduce((min, n) => min[0] <= n[0] ? min : n);
UPD. Если нужно обрабатывать массивы произвольной размерности, можно применить рекурсию:
const arr = [
[ 2, 7, 2, [ 5, [ 4, [ 3 ], 2 ] ] ],
[ 2, 5, [ 2, 6, 5, 2 ], 4 ],
[ 2, 1, [ [ [ 9, 0, 1 ], [ [ [ 1 ] ] ], -1 ] ], 5 ],
[ 3, 1, 2 ],
];
const minElemWithIndex = arr =>
arr.reduce((min, n, i) => {
const m = n instanceof Array
? minElemWithIndex(n)
: [ n, [] ];
m[1].unshift(i);
return m[0] < min[0] ? m : min;
}, [ Infinity, [] ]);
const [ val, indices ] = minElemWithIndex(arr);