控制流

控制流(Control flow)是指计算机执行脚本中语句的顺序。

代码的运行顺序是从文件的第一行到最后一行,除非计算机遇到改变控制流的结构(这种情况极为常见),比如条件语句和循环语句。

例如,假设一个脚本用于验证网页表单中的用户数据。该脚本会提交已验证的数据,但如果用户(比如说)将某个必填字段留空,脚本就会提示他们填写该字段。为了实现这个功能,脚本使用了条件结构(即 if...else),这样就可以根据表单是否填写完整来执行不同的代码。

js
if (isEmpty(field)) {
  promptUser();
} else {
  submitForm();
}

JavaScriptPHP(以及类似语言)的典型脚本中,包含了许多控制结构,包括条件语句、循环函数。脚本的某些部分也可以设置为在事件发生时执行。

例如,上文提到的例子可能位于一个函数内部,该函数在用户点击表单的提交按钮时运行。这个函数还可能包含一个循环,用于遍历表单中的所有字段,并依次检查每个字段。再看 ifelse 部分的代码,promptUsersubmitForm 这两行也可能是对脚本中其他函数的调用。可见,即使只有几行代码,控制结构也能支配复杂的处理流程。

控制流意味着,当你在阅读脚本时,不仅要从头到尾地阅读,还必须关注程序结构以及它如何影响执行顺序。

另见