javascript - 如何在未定义上使用/控制错误传播运算符

标签 javascript ecmascript-6 spread-syntax

我定义了以下函数

const fn = (a) => (console.log(...a));

当我使用参数调用函数时,函数运行完美:

fn(['asd','fgh']) // prints 'asd fgh'

但是,有没有办法用undefined来调用呢?

fn() //Uncaught TypeError: undefined is not iterable(…)

我能想到的唯一解决方案是在函数的开头使用

if (a === undefined) a = '';

例如,有什么方法可以让“...a”返回“”吗?

最佳答案

您可以使用默认参数。如果在函数调用中没有传递任何值,您可以设置每个参数的值。

let fun = (a=3) => console.log(a);

fun(4); //4
fun(); //3

关于javascript - 如何在未定义上使用/控制错误传播运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39410353/

相关文章:

javascript - 扩展运算符用于在对象的数组内分配数据

javascript - Redux:在 2D 数组上使用 Spread 运算符

javascript - 你如何防止输入类型=提交关闭模式?

javascript - 从javascript中的createRange中删除内容

php - 如何使用php在谷歌地图中按位置显示多个区域

reactjs - 在 ES6 中使用 Jest 测试 React Flux Store

javascript - 使用扩展运算符有条件地推送到数组

javascript - 在不同文件中导出不同路由的实际函数

javascript - 如何从 ES6 中匹配的对象声明一个对象

javascript - Graphql错误: "using last without before is not supported"