Javascript 我怎样才能使if-else语句起作用
我的函数采用整型除数数组、一个Javascript 我怎样才能使if-else语句起作用,javascript,if-statement,Javascript,If Statement,我的函数采用整型除数数组、一个低数和一个高数作为参数。它打印低和高数字之间的范围 如果该范围内的数字可被数组的所有元素整除,则打印“all match” 如果至少有一个数字匹配,请打印“一个匹配” 如果没有匹配的号码,请打印号码 但是,我不知道如何正确地编写if-else语句。它只打印匹配的数字。当我更改elseif语句时,它会将所有数字打印两次 function allFactors(factors, num){ var nums = []; for
低
数和一个高
数作为参数。它打印低
和高
数字之间的范围
- 如果该范围内的数字可被数组的所有元素整除,则打印“all match”李>
- 如果至少有一个数字匹配,请打印“一个匹配”
- 如果没有匹配的号码,请打印号码
function allFactors(factors, num){
var nums = [];
for(var i = 0; i < factors.length; i++) {
var factor = factors[i];
if(num % factor === 0){
nums.push(factor);
}
}
if(nums.length === factors.length){
return true;
}
return false;
}
//console.log(allFactors([2,3],6))
function isFactor(num, factor) {
if(num % factor === 0) {
return true;
}
return false;
}
function matches(factors, low, high) {
var skipper = false
for(var i = low; i <= high; i++) {
if(allFactors(factors,i)){
console.log(i + " match_all")
} else {
for(var j = 0; j < factors.length;j++) {
var factor = factors[j];
if(isFactor(i,factor)) {
console.log(i + " match_one");
skipper = true
} else {
if(isFactor(i,factor)) {continue}
console.log(i)
}
}
}
}
}
matches([2,3],1,6)
函数所有因子(因子,num){
var nums=[];
对于(变量i=0;i 对于(var i=low;i一旦知道一个因子匹配,就尝试从循环中中断
function matches(factors, low, high) {
var skipper = false;
for(var i = low; i <= high; i++) {
if(allFactors(factors,i)){
console.log(i + " match_all")
} else {
for(var j = 0; j < factors.length;j++) {
var factor = factors[j];
if(isFactor(i,factor)) {
console.log(i + " match_one");
skipper = true;
// break here because we know that at least one factor matches
// and print "match_one"
break;
} else {
// number not matched
console.log(i);
}
}
}
// use skipper variable you assigned above to break out of outer loop
if(skipper){
break;
}
}
}
函数匹配(因子,低,高){
var skipper=false;
对于(var i=low;i这行skipper=true
做什么?我在想,如果第二个if语句为true时我能使它为true,那么我可以让它不打印,但它仍然会打印。没有bueno只计算数字2,然后返回d=对于任何一组数字,这个问题真的难住了我的编辑,if
stat对continue;
的修改是无用的。您正在检查if(5>7){}else{if(5>7){continue;}
。