评估终止条件

时间:2016-10-16 15:26:13

标签: javascript for-loop

我正在学习javascript来增强我的日常工作,所以我正在学习基础知识。

我的语法仍然很绿,但我很快就接受了这种语言。

我想要了解的是我如何创建一个评估函数的终止条件。

我知道这里的编码是错误的,这就是我想要解决的问题 - 我尝试了很多不同的东西,但是我在根据我的产品评估循环时遇到了麻烦。

我尝试使用return来存储每次迭代的值,但是每次尝试都会导致脚本失败。

我希望脚本执行的操作是在产品达到< = 100时停止循环。

问题是,我的研究表明循环标准只能引用变量,i。

我遇到了如何查看结果product作为终止条件的问题。

var one = 5;
var two = 10;
var end = 100;

function mult (one, two) {
  var product = one * two;
  document.writeln(product + "<br>");
}

for (var i = 1; i <= end; i++)
  mult(i, two);

2 个答案:

答案 0 :(得分:0)

如果您希望在产品为<= 100时终止循环,请使用if语句来决定是否要写一行。

我更改了一些变量名称,以便更容易理解。

&#13;
&#13;
/*var one = 5;*/ /*This is never being used*/
var ten = 10;
var end = 100;

function mult (a, b){
  var product = a * b;
  if (product <= 100){
    document.writeln(product + "<br>");
   }
}

for (var i = 1; i <= end; i++){
  mult(i, ten);
}
&#13;
&#13;
&#13;

答案 1 :(得分:0)

“循环标准只能引用变量,i。”那是假的!

您可以在for loop中定义多个条件。

要在循环执行后访问'product'变量,可以在mult()函数的外部作用域中声明它(或者你可以重写mult()函数来返回产品变量。)

像这样:

  var two = 10;
  var end = 100;
  var someNumberGtThan100 = 100000;
  var lastProduct = 0;
  var product = 0;

  function mult (one, two) {
    lastProduct = product;
    product = one * two;
    document.writeln(product + "<br>");
  }

  for (var i = 1; i <= someNumberGtThan100 && product <= 100; i++) {
    mult(i, two);
  }

  console.log(lastProduct); // 100

通过使用此条件,您必须将先前的值存储在辅助变量中,因为当'product'达到值100时,循环条件仍为真,因此循环将执行一次。