JavaScript 默认参数

    在本教程中,您将借助示例了解 JavaScript 默认参数。
    默认参数的概念是 ES6 版本的 JavaScript 中引入的一个新特性。这允许我们为函数参数提供默认值。我们举个例子,

function sum(x = 3, y = 5) {

    // return sum
    return x + y;
}

console.log(sum(5, 15));  // 20 
console.log(sum(7));        // 12
console.log(sum());          // 8

    在上述示例中,x 的默认值为 3,y 的默认值为 5。

  • sum(5, 15) - 当两个参数都被传递时,x 取 5,y 取15。
  • sum(7) - 将 7 传递给 sum()函数时,x 取 7,y 取默认值 5。
  • sum() - 当没有参数传递给 sum()函数时,x 取默认值 3,y 取默认值 5。

在这里插入图片描述

JavaScript 中默认参数的工作原理
使用表达式作为默认值

    也可以提供表达式作为默认值。

示例 1:将参数作为默认值传递
function sum(x = 1, y = x,  z = x + y) {
    console.log( x + y + z );
}

sum(); // 4

    在上述程序中,

  • x 的默认值为 1
  • y 的默认值设置为参数 x
  • z 的默认值是 x 和 y 的和

    如果引用尚未初始化的参数,则会出现错误。例如,

function sum( x = y, y = 1 ) {
    console.log( x + y);
}

sum(); 

    输出

ReferenceError: Cannot access 'y' before initialization
示例 2:将函数值作为默认值传递
// using a function in default value expression

const sum = () => 15;

const calculate = function( x, y = x * sum() ) {
    return x + y;
}

const result = calculate(10);
console.log(result);            // 160

    在上述程序中,

  • 10 被传递给 calculate()函数。
  • x 变为 10,y 变为 150(sum 函数返回15)。
  • 结果将是160。
传递 undefined 值

    在 JavaScript 中,当您将 undefined 传递给默认参数函数时,该函数将采用默认值。例如,

function test(x = 1) {
  console.log(x);
}

// passing undefined
// takes default value 1
test(undefined); // 1

    上一教程JS Arrow Function                                          下一教程JS Template Literals

参考文档

[1] Parewa Labs Pvt. Ltd. (2022, January 1). Getting Started With JavaScript, from Parewa Labs Pvt. Ltd: https://www.programiz.com/javascript/default-parameters

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值