вариант reverse
function doReverse(a) {
var c = a.length,
d = Math.floor(c / 2),
b = a.slice(d);
a.length = d;
2 < c && (b = doReverse(b), a = doReverse(a));
return b.concat(a)
};
var i = doReverse([0, 1, 2, 3, 4, 5, 6])
alert(i);
var a = Array.from({length : 100}, (a,b)=>b)
alert(a);
a = doReverse(a);
alert(a);