aardio函数返回值

wx 3天前 80

 

编程中的自定义函数

今天在编程学习的道路上又迈出了新的一步,接触到了函数这个超有趣的概念,感觉像是打开了编程世界里一个神奇的百宝箱!

想象编程就像一场奇妙的冒险,函数就是我在冒险途中能用到的各种专属工具。就好比我有个装满各种工具的工具箱,每个工具都有独特的用处,需要做什么事,直接拿出对应工具就行,方便又高效。在 aardio 里,我也能打造自己的“工具”,也就是自定义函数,去完成特定任务。

一、函数的基本概念

函数是一段能完成特定任务的代码块,它能接收输入参数,经过一系列操作后,再返回一个结果。这就像有个做蛋糕的机器,我把面粉、鸡蛋、糖这些原料(输入参数)放进去,机器一通搅拌、烘焙操作后,就能给我做出美味的蛋糕(返回结果)。

看下面这个简单例子,计算两个数的和:

import console;
function add(a, b) {
    return a + b;
}

var result = add(3, 5);
console.log(result); 
console.pause(true);
图片一
图片一

这里定义了个叫 add 的函数,它接收 a 和 b 两个参数,然后返回它们相加的结果。接着我调用这个函数,给它 3 和 5 这两个参数,把返回的结果存到 result 变量里,最后输出结果。

二、无参数函数

不是所有函数都得接收参数。有些函数就像自动售卖机,按一下按钮,它就直接给出固定的东西,不需要额外提供啥信息。

比如这个输出问候语的例子:

import console;
function sayHello() {
    console.log("Hello, world!");
}

sayHello();
console.pause(true);
图片二
图片二

这里定义的 sayHello 函数,不接收参数,就只是简单输出一句问候语。调用它,就能在控制台看到这句问候啦。

三、函数的嵌套调用

函数之间还能相互调用呢,就像做一件复杂事儿,得用好几个工具,一个工具完成一部分,再把成果交给下一个工具接着处理。

看计算两个数平方和的例子:

import console;
function square(x) {
    return x * x;
}

function sumOfSquares(a, b) {
    var squareA = square(a);
    var squareB = square(b);
    return squareA + squareB;
}

var result = sumOfSquares(2, 3);
console.log(result); 
console.pause(true);
图片三
图片三

这里定义了两个函数,square 函数用来算一个数的平方,sumOfSquares 函数算两个数的平方和。在 sumOfSquares 函数里,调用 square 函数分别算出两个数的平方,再把结果加起来返回。

此外,还有函数的多个返回值,函数的参数默认值,可变参数。这些都是函数运用中极为实用的特性。函数的多个返回值,能让一个函数一次性输出多种不同结果,如同一个神奇工厂同时生产多样产品;函数的参数默认值,为参数设定默认情形,在调用时若未特别指定参数,就会采用默认值,大大提升编程便捷性;可变参数则允许函数接受数量不定的参数,犹如一个能容纳任意数量物品的神奇口袋,使函数应用场景更为广泛,极大地丰富了函数的功能与灵活性 。


四、习题

做一道习题,要定义个函数算数组里所有元素的平均值,像数组 {1, 2, 3, 4, 5},函数得返回 3 。按照提示,先算数组元素总和,再除以数组长度。我试着写了代码:

import console;
function average(arr) {
    var sum = 0;
    for ( i = 1; #arr; 1) {
        sum = sum + arr[i];
    }
    return sum / #arr;
}

var arr = {1, 2, 3, 4, 5, 6};
var result = average(arr);
console.log(result); 
console.pause(true);
图片四
图片四

定义了 average 函数,接收数组参数。用 for 循环遍历数组算出总和,再除以数组长度得到平均值返回。最后调用函数,拿个数组测试并输出结果。

今天学的函数知识非常有用,在编程里肯定能大显身手。我得再多练习练习,把这些知识掌握得牢牢的,在编程冒险里继续披荆斩棘!

 


最新回复 (2)
  • kangge 3天前
    0 引用 2
    你是跟着哪套教程做的笔记?
  • wx 3天前
    0 引用 3
    文档里面有的
返回