函数有参无参真有很大区别吗?

简介: 函数有参无参真有很大区别吗?

📜个人简介

⭐️ 个人主页: 微风洋洋🙋‍♂️
🍑 博客领域:编程基础,后端
🍅 写作风格:干货,干货,还是tmd的干货
🌸 精选专栏【JavaScript】
🚀 支持洋锅:点赞👍、收藏⭐、留言💬

好久不见,甚是想念!
大家好!我是微风洋洋
芜湖,起飞🚀

函数是几乎任何语言都跳不过的坑。我们常常听说什么 形参实参那些到底是什么呢?有什么作用?函数有参无参真有很大区别吗?

今天,洋哥就和你一起走进函数的大坑里,看看里面究竟隐藏着什么秘密。

一、初识函数

函数:用于封装一段完成特定功能的代码。

相当于将一条或多条语句组成的代码块包裹起来,用户在使用时只需关心参数和返回值,就能完成特定的功能,而不用了解具体的实现。

在这里插入图片描述

  • parseFloat()用于返回解析字符串后的浮点数。
  • isNaN()判断给定参数是否为NaN,判断结果为是,返回true,否则返回false。
  • parseInt()用于返回解析字符串后的整数值。

除了使用内置函数外,JavaScript中还可以根据具体情况自定义函数,提高代码的复用性、降低程序维护的难度。



⭐️函数的定义由以下4部分组成:

  • 关键字function
  • 函数名
  • 参数
  • 函数体

在这里插入图片描述

  • function:定义函数的关键字。
  • 函数名:可由大小写字母、数字、下划线(_)和$符号组成,但是函数名不能以数字开头,且不能是JavaScript中的关键字。
  • 参数:是外界传递给函数的值,它是可选的,多个参数之间使用“,”分割。
  • 函数体:是专门用于实现特定功能的主体,由一条或多条语句组成。
  • 返回值:在调用函数后若想得到处理结果,在函数体中可用return关键字返回。



二、参数设置

函数可以根据参数的设置分为以下两种:

在这里插入图片描述


🍅无参函数

无参函数:适用于不需要提供任何数据,即可完成指定功能的情况。

在自定义函数时,即使函数的功能实现不需要设置参数,小括号“()”也不能够省略。

在这里插入图片描述


🍅有参函数

有参函数:适用于开发时函数体内的操作需要用户传递数据的情况。

  • 形参:指的就是形式参数,具有特定的含义,在定义有参函数时设置的参数。
  • 实参:指的是实际参数,也就是具体的值,在函数调用时传递的参数。

在这里插入图片描述


获取函数调用时传递的所有实参:适用于开发时函数体形参不确定的情况。

  • 实现方式:利用arguments对象,在函数体内可获取函数调用时传递的实参。
  • 其他操作:length属性可获取实参的总数,具体实参值可利用数组遍历方式。

在这里插入图片描述


⭐️含有默认值的参数与剩余参数

函数参数的设置,在ES6中提供了更灵活的使用方式,如设置形参的默认值等。

在这里插入图片描述

函数的形参在设置时,还可以为其指定默认值。当调用者未传递该参数时,函数将使用默认值进行操作。


函数定义时,还可用“…变量名”的方式动态接收用户传递的不确定数量的实参。

在这里插入图片描述



三、函数的调用

  • 当函数定义完成后,要想在程序中发挥函数的作用,必须得调用这个函数。
  • 函数的调用非常简单,只需引用函数名,并传入相应的参数即可。
  • 函数声明与调用的编写顺序不分前后。

在这里插入图片描述

[参数1,参数2…]是可选的,用于表示形参列表,其值可以是零个、一个或多个。



四、【案例】字符串大小写转换

在这里插入图片描述
代码实现思路

  • 编写HTML表单,设置两个文本框和两个按钮,文本框显示转换前后数据,按钮用于转换。
  • 为按钮添加点击事件,并利用函数deal()处理。
  • 编写deal()函数,根据传递的不同参数执行不同的转换操作。
  • 将转换后的数据显示到对应位置。
老规矩就不给你们留门了,学而不思则罔,自己动手事半功倍,当然实在不会可以上网查找,也可私信我,关键要有一颗好学的心❤️


如果觉得这篇文章对你有一丢丢启发的话,不妨 点赞👍、收藏⭐、留言💬支持一下,你的支持将是我继续创作的最大动力❤️❤️❤️

由于作者水平有限,如有错误和不准确之处在所难免,本人也很想知道这些错误,恳望读者批评指正!

if (学会了){
点个赞,给个好评,我祝福你学啥会啥;
}else{
收藏一下以后慢慢学,我相信你能学会;
}
相关文章
|
4月前
|
安全 数据安全/隐私保护 网络架构
CAPWAP 和 LWAPP 的区别
【8月更文挑战第24天】
122 0
|
Java
While 与 do while 的区别
While 与 do while 的区别
80 0
|
JSON 数据格式
中writeValue和writeValueAsString的区别
writeValueAsString(obj):将传入的对象序列化为json,返回给调用者
|
算法 IDE Unix
C和C++的区别
C和C++的区别
200 0
|
C语言
%C和%S区别
%C和%S区别
271 0
&和&&的区别
&和&&的区别
196 0
@EnableEurekaClient上有@EnableDiscoveryClient区别
@EnableEurekaClient只适用于Eureka作为注册中心,@EnableDiscoveryClient 可以是其他注册中心。
943 0
|
容器 数据格式 XML
getMeasuredWidth和getWidth的区别
View的getWidth()和getMeasuredWidth()有什么区别吗? View的高宽是由View本身和Parent容器共同决定的。getMeasuredWidth()和getWidth()分别对应于视图绘制的measure和layout阶段。
1542 0