Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 可选参数的可选默认值_Javascript_Typescript_Syntax - Fatal编程技术网

Javascript 可选参数的可选默认值

Javascript 可选参数的可选默认值,javascript,typescript,syntax,Javascript,Typescript,Syntax,我想将默认值设置为可选参数。在原始代码中,函数包含多个参数,调用方式如下:options是可选参数,可以包含多个可选参数: func(arg1, arg2, options) 为了简单起见,我删除了下面示例中的前两个参数。我现在是这样做的: function test({ a = true, b = false }: { a?: boolean, b?: boolean } = { a: true, b: false }) { console.log(a, b); } // Exam

我想将默认值设置为可选参数。在原始代码中,函数包含多个参数,调用方式如下:
options
是可选参数,可以包含多个可选参数:

func(arg1, arg2, options)
为了简单起见,我删除了下面示例中的前两个参数。我现在是这样做的:

function test({ a = true, b = false }: { a?: boolean, b?: boolean } = { a: true, b: false }) {
    console.log(a, b);
}

// Examples
test();                      // true, false (defaults)
test({ a: false });          // false, false
test({ b: true });           // true, true
test({ a: false, b: true }); // false, true

函数头中有很多冗余我正在寻找一种简化代码并消除冗余的方法

参数初始值设定项可以是空对象:

function test({ a = true, b = false }: { a?: boolean, b?: boolean } = {}) {
    console.log(a, b);
}