1.函数参数
//这里的a,b称为 形参,指定义的参数
let a=(a,b)=>a+b
//这里的1,2称为 实参,指用来传递的参数
console.log(a(1,2));
那么如果实参不固定 或者数量过于多的时候 要一个一个形参接受吗 其实有以下办法可以
1.1 arguments
如图 只需函数内调用arguments 会返回实参伪数组
1.2 剩余参数…
只能置于函数最末形参之前,用来获取多余的参数
那么只用一个…b接受全部参数 也可以的 返回一个数组
如果将剩余参数…用于实参 表示展开
-
2.函数返回值
函数中通过return返回的数据,默认情况下返回都是单值,其实可以返回返回多值
2.1 通过数组返回多值
2.2 通过对象返回多值
2.模板字面量/模板字符串
是允许嵌入表达式的字符串(可以使用多行字符串和字符串插值功能) 它的写法,以反引号 ` 开头,以反引号 ` 结尾
可以解析变量,表达式 html 可以换行
2.1用法
2.模板函数
模板函数: 使用"模板字面量"做为参数的函数
第一个参数:模板字面量参数中的字符串字面量组成的数组
第二个参数:一个或多个模板字面量中插值列表
3.闭包
正常情况 函数执行完成内部变量会销毁
而闭包 内部函数没有执行完成,外部函数变量不会被销毁。
// 形成闭包的二个条件:
// 1. 父子函数
// 2. 子函数中调用父函数中的变量
3.1 纯函数
将外部自由变量,通过参数传入到函数中,而不是在函数中直接引用
let a=10
let b=(a,b)=>a+b
console.log(b(a,10));