如何编写Javascript for循环以便在满足第一个条件时它会中断?

Moh*_*azy 0 javascript

我试图编写一个脚本来找到最大的公因子(最高公因子/ HCF),但是循环向下计数,所以我想在它找到第一个公因子后立即中断(因为它向下计数所以这是也是HCF).

然而,我的代码结果显示了所有常见因素,并且一旦找到4,就没有突破循环,HCF为12和8.

这里是:

function maxi(a, b) {
  for (var i = a; i >= 1; i--) {
    for (var j = b; j >= 1; j--) {
      if (a % i == 0) {
        if (b % j == 0 && i == j) {
          console.log(i);
          break;
        }
      }
    }
  }
}
maxi(12, 8);
Run Code Online (Sandbox Code Playgroud)

Ram*_*lfc 5

我猜你有正确的逻辑.

只是改变

 if (b % j == 0 && i == j){
                    console.log(i);
                    break;
            }
Run Code Online (Sandbox Code Playgroud)

   if (b % j == 0 && i == j){
                        console.log(i);
                        return;
                }
Run Code Online (Sandbox Code Playgroud)