JavaScript -练习册(2) 函数
在JavaScript(后面简称JS)里面函数都是以function作为开头一个简单的例子。
function HelloWorld() {
console.log("Hello World!");
} |
用以上方法定义了一个helloworld的函数,需要调用这个函数的时候就可以直接HelloWorld()即可。我们将这个JS文件保存为Function,用上一节的方法在VScode里面调用看看,程序如图1所示。测试结果如图2所示。
图1:程序代码
图2:运行结果
HelloWorld这个函数是个没有返回值的函数,我希望写个有返回值的函数,比如说返回A+B的数值,我们添加一个函数,我们将其命名为Add他有两个输入参数,输出参数为A和B的相加值。最后我们通过函数的返回值将其打印出来。一个简单的例子如下:运行结果如图3所示
function add(a, b) {
return a + b;
}
console.log(add(1, 2)) |
图3:运行结果
另外提一嘴,要是想拼接字符串也可以直接将a的参数输入“str1”b的参数输入“str2”就可以得到“str1str2”。
通过上面的例子大概知道函数怎么回事了,用来做一些数值的计算没啥问题大概明白了。在整个函数从1+到100也是比较经典的练习了。代码如下,图4为运行结果。
/**
* 计算从1到100的数字之和
*
* 该函数通过一个循环,将从1到100的数字逐一相加,以计算它们的总和这是一个经典的编程问题解决方案,
* 展示了如何使用循环和累加器来处理一系列数字
*/
function sumFrom1To100() {
// 初始化累加器为0,用于计算总和
let sum = 0;
// 循环从1到100,包括1和100
for (let i = 1; i <= 100; i++) {
// 将当前数字加到累加器上
sum += i;
// 打印当前数字,以便跟踪循环进度
console.log(i);
}
// 打印最终的总和
console.log('Sum from 1 to 100:', sum);
} |
图4:运行结果
注意到i是用let定义的,有的时候在JS的代码里面看到很多都是var定义的。以下是Ai 通义千问的解释:
- 使用 var 声明的变量:
- var 声明的变量具有函数作用域。
- 在函数内部声明的 var 变量可以在整个函数范围内访问。
- 使用 let 声明的变量:
- let 声明的变量具有块级作用域。
- 在函数内部声明的 let 变量只能在声明它的块(如 {} 内)内访问。
基于以上我们可以在 // 打印最终的总和 那一段之前添加一个console.log(i);测试是否可以正常打印,如果不能正常打印我们将i替换为var定义看看是否能正常打印。图5是测试1,图6是测试2.
图5:测试1在打印最终的总和前打印i
图6:测试2修改i的定义为var
目前var已经比较少用了,通义千问给出的结束如下:
- var的特点:
- 函数作用域:var声明的变量只在函数内部有效,如果不在函数内,则是全局作用域。
- 变量提升:var声明的变量会被提升到其作用域的顶部,这意味着可以在声明之前访问该变量(尽管这样做不推荐)。
- 可以重复声明:在同一作用域内可以多次声明同一个var变量。
- let的特点:
- 块级作用域:let声明的变量只在其所在的块级作用域(如循环、if语句等)内有效。
- 不会被提升:let声明的变量不会被提升,因此不能在声明之前访问它。
- 不允许重复声明:在同一作用域内不能重复声明同一个let变量。
好嘞,今天的学习就到这里了,初一大家玩的开心吗?点点赞