if

一种选择是否运行一段代码的方法。

if 语句对于根据条件运行一段代码非常有帮助。例如 if 语句使得表达“如果鼠标被按下,则画一个圆”的想法变得简单:

if (mouseIsPressed === true) { circle(mouseX, mouseY, 20); }

语句头部以关键字 if 开头。括号中的表达式 mouseIsPressed === true 是一个 Boolean 表达式, 其值为 truefalse。花括号 {} 之间的代码是 if 语句的主体。 只有当 Boolean 表达式的值是 true 时,主体中的代码才会运行。

mouseIsPressed 系统变量始终为 truefalse,所以上面的代码片段也可以写成:

if (mouseIsPressed) { circle(mouseX, mouseY, 20); }

if-else 语句中的代码,只有当 Boolean 表达式的值为 false 的时候才会运行。 例如:下面是一个 if-else 语句,表示“如果鼠标被按下,则画一个圆。否则,显示一条消息”:

if (mouseIsPressed === true) { // When true. circle(mouseX, mouseY, 20); } else { // When false. text('Click me!', 50, 50); }

这段代码片段有两条可能的路径,或者说分支。程序必须遵循其中一条分支。

else-if 语句允许添加多个分支。 else-if 语句在不同的条件下运行不同的代码块。 例如,else-if 语句使得表达“如果鼠标在左边,将画布涂白。 如果鼠标在中间,将画布涂灰。否则,将画布涂黑。”变得简单:

if (mouseX < 33) { background(255); } else if (mouseX < 67) { background(200); } else { background(0); }

if 语句可以根据需要添加多个 else-if 语句。但是,只能有一个 else 语句,并且且必须放在末尾。

if 语句还可以一次性判断多个条件。例如,Boolean 运算符 &&(且)判断两个表达式是否同时为 true

if (keyIsPressed === true && key === 'p') { text('You pressed the "p" key!', 50, 50); }

如果用户按下键盘中的 'p' 键,则会显示一条信息。

Boolean 运算符 || (或) 判断两个表达式中是否至少有一个为 true

if (keyIsPressed === true || mouseIsPressed === true) { text('You did something!', 50, 50); }

如果用户按下一个键,或者按下一个鼠标按钮,或者两者都按下,则会显示一条消息。

if 语句的主体可以包含另一个 if 语句。这被称为嵌套 if 语句。 例如,嵌套 if 语句使得表达“如果按下一个键,判断这个键是否是'r'键。如果是,那么将填充颜色设置为红色。”变得简单:

if (keyIsPressed === true) { if (key === 'r') { fill('red'); } }

学习更多关于这些数据类型及其支持的操作,请参阅 BooleanNumber

示例

Notice any errors or typos? Please let us know. Please feel free to edit src/core/reference.js and open a pull request!

相关参考