首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS函数

什么是函数

函数就是一段具有特定功能的代码块。

函数在js中地位非常高,属于一等公民函数作用

拆分代码,提高代码复用性,便于后期的维护和测试

函数的定义和调用

函数分类:

系统内置函数(如:parseInt()、parseFloat()、push()等)

程序员自定义函数:可以实现特定功能。

自定义函数有两种方式:

函数声明

函数表达式

函数声明:

函数表达式:

注意事项:

function它是定义函数的关键字 不可以省略。

函数名的命名规则与变量名是一样的,起的函数名一定要有意义,一看函数名就知道此函数实现什么功能

不能使用JS中的关键字和保留字作为函数名

如果函数名是由多个单词组成的,那么可以使用下划线法和小驼峰法

函数名严格区分大小写

函数名后面紧跟着一对小括号 这一对小括号不能省略,小括号后面紧跟着一对花括号, 这一对大括号不能省略

花括号里面是函数体

标识符:变量名和函数名就是标识符(token)。

案例:

实现两数之和。

实现1-100之间的和

上面两个函数虽然可以实现相应的功能。

缺点:仅能实现特定的功能,不够灵活,不具有扩展性。

解决办法:通过函数参数

函数的参数

为什么要有参数

上面代码带来的弊端:

虽然上面代码可以重复调用,但是只能计算1-100之间的值,不够灵活,扩展性不强!

若要计算1-200的和呢?怎么处理?,聪明的你肯定会想到改成即可。

若后面改需求了,要计算500-1000的和,怎么办? 那就把初始值i改为500, 条件改为i

弊端就是仅能实现特定的功能。

那么函数的参数就可以解决上面的问题。

函数参数分为形参和实参。

形参:在定义函数的时候声明的形式参数。

实参:调用函数时传入的实际参数。

形参仅仅起到一个占位的作用,具体是什么值,由调用者传递的实参决定。

语法格式:

示例:

若对应的形参没有传值,则默认值为undefined

什么时候要定义参数?

若函数内部使用到的值,是需要调用者来决定的,这类数据,我们就可以把它定义为一个形参 。

函数调用的时候在传递实参即可,这样的函数会更具有扩展性。

参数的默认值

若某个形参没有传递相应的实参,则值就会默认为undefined。

定义的时候我们可以给形参取个默认值:

注意:含有默认值的形参只能定义在最右边。函数的返回值 return

之前的函数案例中,我们都是直接在函数内部打印结果。打印的目的仅仅只是测试函数是否好使!

但是!!

在真实的项目开发中,我们肯定是需要得到函数的处理结果的,并把结果用在其他的地方。

如何得到函数的处理结果? 通过函数内部的关键字

return作用:

返回函数结果并终止函数的执行。

示例:

注意:

如果函数没有使用return返回值 ,则函数默认会返回

函数可以有多个return语句,但有且仅只会执行一个。因为return本质就是返回函数结果并终止函数的运行。

封装函数,实现两数之和:

封装函数,判断一个数是否是偶数

数组内置函数indexOf

arr.indexOf(value): 判断数组元素首次在数组中出现位置,存在返回其下标,否则返回 -1

arr.includes(value):判断数组元素是否存在数组中,存在返回true,否则返回false

函数内部属性arguments

arguments是函数内部的特殊属性。

arguments作用:获取所有的实参。

arguments是一个伪数组(类数组对象)。所谓伪数组就类似于真数组一样,可通过下标获取元素和通过length属性获取元素个数。也可for循环访问元素,但是不能调用真数组的方法(如:push)。

案例:求任意个数数字的和

获取函数定义的形参个数:

实现数组内置push方法

实现数组的lastIndexOf方法

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230527A000A400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券