[JS]函数

介绍

函数就是用来执行特点任务的代码块, 目的是实现代码复用, 提高开发效率

使用

1.0函数的声明
function 函数名 () {
  //函数体
}
2.0函数的调用

3.0命名规范
  1. 和变量命名规则基本一致
  2. 尽量小驼峰式命名
  3. 前缀应该为动词

传参

函数的参数可以极大提高函数的灵活性

1.0参数分类:

形参:形式参数,没有值,用来接收实参的值。

实参:实际参数,有值,用来给形参传递值。

2.0函数传参
// 声明一个有参数的函数
function( 形参1,形参2) {
     //函数体
} 

// 调用函数并传参
函数名(实参1,实参2)

注意:

  1. 在js中,如果有同名函数,后面的会覆盖前面的。
  2. 实参的个数可以和形参不一致:
  • 如果实参多余形参,多余的实参会被舍弃。
  • 如果形参多余实参,缺少的实参返回undefind。
  1. 实际开发中建议保持形参和实参一致
3.0默认参数

通过定义函数参数的默认值, 可以提高函数的健壮性

// 默认参数
function( 形参1 = 默认值) {
     //函数体
} 
  • 默认参数只会在缺少实参时生效
  • 函数参数缺少实参, 并且没有设置默认参数, 值就是undefined
  • 这也符合" 形参就是函数内部声明的变量 "观点, 变量声明不赋值就是undefined

返回值

函数的返回值可以进一步提高函数的扩展性, 使调用者可以拿到函数执行的结果

  1. 函数是否需要返回值, 要根据实际需求确定
  2. 函数中通过return关键字返回执行结果, 交给调用者使用
  3. 函数中只能有一个return, return之后的程序不再执行
  4. return只能返回一个值,可以通过数组或对象的方式,返回多个值。
  5. 函数的返回值默认是undefined

作用域

作用域决定代码生效的范围, JS把作用域划分为全局作用域和局部作用域, 这样做的目的是提高程序的可靠性,减少可能的代码冲突

  1. 全局作用域:
  • script标签内部
  • 独立的js文件
  1. 局部作用域:
  • 函数作用域(函数内部)
  • 块级作用域( { }范围内 )
  1. 只要是代码, 就至少存在一个作用域

作用域链

多个作用域相连就形成了作用域链, 作用域链决定变量生效的值, 变量的访问遵循就近原则, 先局部, 再全局

根据作用域不同, 变量分为全局变量和局部变量

  1. 全局变量: 可以在任何区域访问
  2. 局部变量: 只能在当前作用域内访

匿名函数

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值