238|1

2647

帖子

6

TA的资源

五彩晶圆(初级)

楼主
 

JavaScript -练习册(2) 函数 [复制链接]

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 通义千问的解释:
  1. 使用 var 声明的变量:
  • var 声明的变量具有函数作用域。
  • 在函数内部声明的 var 变量可以在整个函数范围内访问。
  1. 使用 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变量。
好嘞,今天的学习就到这里了,初一大家玩的开心吗?点点赞

此帖出自编程基础论坛

最新回复

许总的学习方法非常好呀,看到您这么系统的学习,效果肯定不错!感谢分享!  详情 回复 发表于 5 天前
点赞 关注
个人签名

希望做一些大家觉得好用的东西!

 

回复
举报

7090

帖子

11

TA的资源

版主

沙发
 
许总的学习方法非常好呀,看到您这么系统的学习,效果肯定不错!感谢分享!
此帖出自编程基础论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表