【发布时间】:2017-03-23 21:47:24
【问题描述】:
var myFunc = function(x = getUndefined()){
return x
};
function getUndefined(){
return undefined
};
我想知道为什么这会返回 undefined 而不是抛出某种错误。 x 怎么知道不要一直打电话给getUndefined()?
【问题讨论】:
-
它没有抛出错误,因为它是正确使用的有效语法。你觉得这里到底有什么奇怪的地方?
-
为什么会一直调用
getUndefined()?如果没有为参数提供值,则计算默认参数的表达式并将其传递给函数。 -
我理解语法是正确的
-
那么,有什么问题呢? :-S
-
我认为由于某种原因这会导致对
getUndefined()的无限循环调用
标签: javascript error-handling ecmascript-6