使用默认参数代替||运算
不知道大家是否见到过如下这样的代码。
1 | function foo(userList: string[]) { |
这段代码中使用|| []
进行了一种防御性编程,因为传入的userList
可能是undefined
。使用|| []
以后,就可以避免在undefined
上调用map
函数出错,其实我们可以使用javascript的默认参数来实现这个功能。
1 | function foo(userList: string[] = []) { |
需要注意的是,默认参数只能处理undefined
, 对于null
或其他假值(如0
、''
等)是无法替代的。因此在使用默认参数时,需要确保传入的参数是undefined
。否则还是用||
比较保险一些。