我在这里找到了功能。它接受一个整数数组并返回它们的最大公约数。有时它会陷入无限循环并使浏览器崩溃。我想调试它以找到原因,但我不明白for
s 中使用的语法。如何将这些重写为普通for(var i; i<max; i++)
循环?
mdc = function(o){
if(!o.length)
return 0;
for(var r, a, i = o.length - 1, b = o[i]; i;)
for(a = o[--i]; r = a % b; a = b, b = r);
return b;
};