跳到主要内容

参数

参数

  • 形式参数

    • 在定义函数时,可以在函数中指定数量不等的形式参数(形参)
    • 在函数中定义形参,就相当于在函数内部声明了对应的变量但是没有赋值
  • 实际参数

    • 在调用函数时,可以在函数的()传递数量不等的实参

    • 实际参数赋值给对应的形参

    • 参数:

      1. 如果实参和形参数量相同,则对应的实参赋值给对应的形参
      2. 如果实参多余形参,则多余的实参不会使用
      3. 如果形参多余形参,则多余的形参为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