在条件判断中,若单个条件需要由多个逻辑式组成,通常会使用逻辑操作符来实现,分别是与(&&)、或(||)、非(!)。
// 创建全局变量
let test = false;
function setup() {
// 画布:720 * 360
createCanvas(720, 360);
background(126);
noLoop();
}
function draw() {
// i的初始值为5,自增步长取5,一直自增至画布高度,因此可以将i视为一个变化的高度值
for (let i = 5; i <= height; i += 5) {
// 逻辑 AND
stroke(0);
// 注意:在数学中,我们可以用35 < 高度 < 100的方式来表明高度的范围,但是条件判断中不能这么写,必须将其拆开,并用逻辑与来进行连接。
if (i > 35 && i < 100) {
line(width / 4, i, width / 2, i);
test = false;
}
// 逻辑 OR,当高度<=35 或者 >= 100的时候,画出来的直线是画布中右侧较长的那一块。
stroke(76);
if (i <= 35 || i >= 100) {
line(width / 2, i, width, i);
test = true;
}
// 注意:上述两种情况,分别将test赋值为true和false了,因此注意下方的条件
// 表达式 “if(test)” 等同于 "if(test == true)"
if (test) {
stroke(0);
point(width / 3, i);
}
// !为取反符,例如test为true时,!test为false。
if (!test) {
stroke(255);
point(width / 4, i);
}
}
}
new p5();