一个被命名的语句组
Functions 函数有助于组织和复用代码。例如,函数使得表达“画一朵花”的想法变得容易:
function drawFlower() { // Style the text. textAlign(CENTER, CENTER); textSize(20); <p> // Draw a flower emoji. text('\U0001F338', 50, 50); } </p>
函数头以关键字 function
开始。函数名 drawFlower
后面是括号 ()
和花括号 {}
。 花括号之间的代码是函数的主体。调用函数时,函数主体中的代码就会运行,如下所示:
drawFlower();
函数可以通过在其头部添加参数来接收输入。 参数是值的占位符,调用函数时需要提供这些值。例如,drawFlower()
函数可以接收一个代表花朵大小的参数:
function drawFlower(size) { // Style the text. textAlign(CENTER, CENTER); <p> // Use the size parameter. textSize(size);</p> <p> // Draw a flower emoji. text('\U0001F338', 50, 50); } </p>
参数是函数声明的一部分,实参由调用函数的代码提供。调用函数时,实参会替代形参:
// The argument 20 is assigned to the parameter size. drawFlower(20);
一个函数可以有多个参数,参数之间用逗号隔开。参数可以是任何类型,例如,drawFlower()
函数可以接收 Number
类型的参数,用于花朵的 x 和 y 坐标以及花朵的大小:
function drawFlower(x, y, size) { // Style the text. textAlign(CENTER, CENTER); <p> // Use the size parameter. textSize(size);</p> <p> // Draw a flower emoji. // Use the x and y parameters. text('\U0001F338', x, y); } </p>
函数还可以通过添加 return
语句产生输出:
function double(x) { let answer = 2 \* x; return answer; }
return
后面的表达式可以产生一个输出,这个输出可以在其他地方使用。例如,double()
函数的输出可以赋值给一个变量:
let six = double(3); text(`3 x 2 = ${six}`, 50, 50);
示例
相关参考
Array
一个按顺序存储多个数据的列表。 数组有助于存储相关数据。它们可以存储任何类型的数据。例如,数组可以以字符串的形式存储某人最喜欢的颜色列表。数组的创建方式如下: let colors = ['deeppink', 'darkorchid', 'magenta']; 数组中的每个数据皆为一个元素。每个元素在其数组中都有一个地址或索引。变量 colors 指的是一个包含三个元素的数组。String> elements, 'deeppink', 'darkorchid',和 'magenta'。数组的索引是从 0 开始的,这就意味着 'deeppink' 的索引是 0, 'darkorchid' 的索引是 1, ‘magenta' 的索引是 2。我们可以使用数组的索引来访问数组元素,如下所示: let zeroth = colors[0]; // 'deeppink' let first = colors[1]; // 'darkorchid' let second = colors[2]; // 'magenta' 通过调用 push() 方法,可以在数组末尾添加元素。方法如下: method as follows: colors.push('lavender'); let third = colors[3]; // 'lavender' 了解更多关于数组的信息,请参阅 MDN .
class
特殊类型对象的创建模板 类可以让使用对象编程变得更容易。例如,一个 Frog 类可以创建行为像青蛙一样的对象。通过类创建的每个对象都是该类的一个实例。同一个类的所有实例都是相同类型。以下是创建 Frog 类实例的示例: let fifi = new Frog(50, 50, 20); 变量 fifi 代表 Frog 的一个实例。关键字 new 用于在语句 new Frog() 中调用 Frog。总之,一个新的 Frog 对象被创建并赋值给了变量 fifi。类是模板,因此我们可以用它创建多个实例: // First Frog instance.
for
一种在已知迭代次数的情况下重复代码块的方法。 for 循环对于重复执行特定次数的语句很有帮助。例如,for 循环使得表达"画五条线"的想法变得简单,如下所示: for (let x = 10; x 循环的头部以关键字 for 开头。循环通常在重复或迭代时递增或递减。括号中的语句 let x = 10; x 决定循环的重复方式: let x = 10 表示循环从 10 开始计数,并使用变量 x 记录迭代次数。 x 表示循环计数到 100(但不包括 100)。 x += 20 表示每次迭代结束时递增 20。 花括号 {} 之间的代码是循环的主体。循环主体中的语句在每次循环迭代期间重复执行。 意外创建无限循环是很常见的。当发生这种情况时,绘图可能会变得无响应,网页浏览器可能会显示警告。例如,以下循环永远不会停止迭代,因为它没有计数递增: for (let x = 10; x 语句 x = 20 使变量 x 的值变为 20,始终小于 100。 for 循环也可以递减计数: for (let d = 100; d > 0; d -= 10) { circle(50, 50, d); } for 循环也可以包含其他循环。下面的嵌套循环绘制了一个点网格。 // Loop from left to right.
function
一个被命名的语句组 Functions 函数有助于组织和复用代码。例如,函数使得表达“画一朵花”的想法变得容易: function drawFlower() { // Style the text.