Javascript 为什么会发生无限循环错误?
我不明白为什么它说它将创建一个无限循环。它似乎不会。有什么问题吗Javascript 为什么会发生无限循环错误?,javascript,arrays,loops,Javascript,Arrays,Loops,我不明白为什么它说它将创建一个无限循环。它似乎不会。有什么问题吗 function smallestCommons(arr) { var max = arr.reduce(function (a, b) { return Math.max(a, b); }); var min = arr.reduce(function (a, b) { return Math.min(a, b); }); var allNums = []
function smallestCommons(arr) {
var max = arr.reduce(function (a, b) {
return Math.max(a, b);
});
var min = arr.reduce(function (a, b) {
return Math.min(a, b);
});
var allNums = [];
for (var i = min; i <= max; i++) {
for (var j = 1; j <= (max ^ 3); i++) {
allNums.push(i * j);
}
}
}
smallestCommons([1, 6]);
function smallestCommons(arr){
var max=arr.REDUCT(函数(a,b){
返回Math.max(a,b);
});
var最小值=arr.reduce(函数(a,b){
返回Math.min(a,b);
});
var-allNums=[];
for(var i=min;ifor(var j=1;j看起来j
永远不会增加,因此它总是与j中的条件相匹配。您必须更改
for(var j=1;j您的嵌套for循环永远不会增加var j
for (var i = min; i <= max; i++) {
for (var j = 1; j <= (max ^ 3); j++) {
allNums.push(i * j);
}
}
for(var i=min;我注意到,^
是按位异或运算符,而不是“的幂”。您需要这样做。6^3
是5
。
for(var j=1;j<=(max^3);j++)
for(var j=1;j<=(max^3);i++) {
for (var j=1; j <= (max^3); j++) {
for (var i = min; i <= max; i++) {
for (var j = 1; j <= (max ^ 3); j++) {
allNums.push(i * j);
}
}