Java脚本中的for循环是如何执行的?

How are for loops executed in javascript?(Java脚本中的for循环是如何执行的?)
本文介绍了Java脚本中的for循环是如何执行的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不知道如何才能最好地接近for循环。希望对for循环的理解将有助于阐明其他类型的循环。

示例代码

for (var i=0; i < 10; i=i+1) {
    document.write("This is number " + i);
}

我的理解是,当i被初始化时,它从0的值开始,然后根据条件< 10进行求值。如果小于10,则执行语句document.write("This is number + i);一旦执行完前一条语句,才会将下一个值递增1

我参考过的指南:

  1. http://www.functionx.com/javascript/Lesson11.htm
  2. http://www.cs.brown.edu/courses/bridge/1998/res/javascript/javascript-tutorial.html#10.1
  3. http://www.tizag.com/javascriptT/javascriptfor.php

现在http://www.functionx.com/javascript/Lesson11.htm处的指南似乎另有说明,即

要执行此循环,需要检查启动条件。这通常是 应开始计数的初始值。接下来,条件是 测试;此测试确定循环是否应继续。如果 该测试呈现TRUE结果,然后使用表达式修改 执行循环和语句。在声明已被 执行后,循环重新启动。

抛给我的行是";,如果测试结果为真,则使用该表达式修改循环,并执行语句";。似乎是因为0小于10,所以修改增量表达式,修改为0 + 1,然后执行语句,例如document.write

我的问题

解释for循环的正确方式是什么?我自己的理解正确吗?同样的理解是否适用于其他编程语言,如PHP、Perl、Python等?

推荐答案

您引用的来源是错误的,我们可以证明...

for循环的基础有四个可以执行的独立块:

for(initialiseconditionfinishediteration){iteration>

幸运的是,我们可以在每个块中执行一个函数。因此,我们可以创建四个函数,在它们执行时记录到控制台:

var initialise = function () { console.log("initialising"); i=0; }
var condition = function () { console.log("conditioning"); return i<5; }
var finishediteration = function () { console.log("finished an iteration"); i++; }
var doingiteration = function () { console.log("doing iteration when `i` is equal", i); }

然后我们可以运行以下命令,将上述函数放入每个块中:

for (initialise(); condition(); finishediteration()) {
    doingiteration();
}

卡波姆。有效。

如果您在Mac上使用Safari查看此页面,则可以AppleAlt+i按顺序将上述两个代码片段复制到控制台中并查看结果。

编辑,附加信息...

还有...已完成小版本块是可选的。例如:

for (var i=0; i<10;) { 
    console.log(i); i++; 
};

确实有效。

这篇关于Java脚本中的for循环是如何执行的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Update another component when Formik form changes(当Formik表单更改时更新另一个组件)
Formik validation isSubmitting / isValidating not getting set to true(Formik验证正在提交/isValiating未设置为True)
React Validation Max Range Using Formik(使用Formik的Reaction验证最大范围)
Validation using Yup to check string or number length(使用YUP检查字符串或数字长度的验证)
Updating initialValues prop on Formik Form does not update input value(更新Formik表单上的初始值属性不会更新输入值)
password validation with yup and formik(使用YUP和Formick进行密码验证)