参数
参数
形式参数
- 在定义函数时,可以在函数中指定数量不等的形式参数(形参)
- 在函数中定义形参,就相当于在函数内部声明了对应的变量但是没有赋值
实际参数
在调用函数时,可以在函数的()传递数量不等的实参
实际参数赋值给对应的形参
参数:
- 如果实参和形参数量相同,则对应的实参赋值给对应的形参
- 如果实参多余形参,则多余的实参不会使用
- 如果形参多余形参,则多余的形参为undefined
参数的类型
- JS中不会检查参数的类型,可以传递任何类型的值作为参数
函数的声明
function 函数名(参数){
语句...
}函数表达式
const 变量 = function(参数){
语句...
}箭头函数
const 变量 = (参数) => {
语句...
}
箭头函数的参数
- 当箭头函数中只有一个参数时,可以省略()
- 定义参数时,可以为参数指定默认值,会在没有对应实参时生效
const fn = a => {
console.log(a);
}
fn(123); // 123
const fn2 = (a = 10, b = 20, c = 30) => {
console.log(a, b, c);
}
fn2(1, 2); // 1 2 30
对象和函数作为参数
- 对象可以作为参数传递
- 传递实参时,传递并不是变量本身,而是变量中存储的值
- 函数每次调用,都会重新创建默认值
- 在JS中,函数也是一个对象(一等函数),别的对象能做的事情,函数也可以
let obj = { name: "孙悟空" };
function fn(a) {
console.log("我是fn");
a();
}
function fn2() {
console.log("我是fn2");
}
fn(fn2); // 我是fn 我是fn2