1
0
mirror of https://github.com/ruanyf/es6tutorial.git synced 2025-05-24 18:32:22 +00:00

语义不清晰

1. 语义不清晰。
2. 引入 Python 作为比较,对于不了解 Python 的读者并无意义。
This commit is contained in:
Max 2017-04-13 22:09:46 +08:00 committed by GitHub
parent ed9c9c1327
commit c582198e7a

View File

@ -371,7 +371,7 @@ foo()
上面代码的`foo`函数,如果调用的时候没有参数,就会调用默认值`throwIfMissing`函数,从而抛出一个错误。
从上面代码还可以看到,参数`mustBeProvided`的默认值等于`throwIfMissing`函数的运行结果(即函数名之后有一对圆括号),这表明参数的默认值不是在定义时执行,而是在运行时执行(即如果参数已经赋值,默认值中的函数就不会运行),这与 Python 语言不一样
从上面代码还可以看到,参数`mustBeProvided`的默认值等于`throwIfMissing`函数的运行结果(注意函数名throwIfMissing之后有一对圆括号),这表明参数的默认值不是在定义时执行,而是在运行时执行如果参数已经赋值,默认值中的函数就不会运行。
另外,可以将参数默认值设为`undefined`,表明这个参数是可以省略的。