在dartjs中使用选项

时间:2014-03-14 17:03:23

标签: dart

新手在飞镖js。好的,我理解可选参数的概念,与C#非常相似,但我不太清楚为什么以下结果会给出结果:

void main() {
  print(SayInFunction('Joe', suffix : ' Sir'));
}

String SayInFunction(name, {suffix : " Junior"}) => SayHello(name + suffix);

String SayHello(name, {suffix : " Senior"}) => ('Hello $name $suffix');

这是回报:

Hello Joe Sir  Senior

为什么我认为它应该是错的:

Hello Joe Sir

PS:如果它与$符号有关,我应该如何重组SayHello函数以返回' Hello Joe Sir' ?

答案:

String SayInFunction(name, {suffix : " Junior"}) => SayHello(name, suffix: suffix);

1 个答案:

答案 0 :(得分:2)

您需要致电SayHello(name, suffix: suffix);以获得所需的结果 您有效地致电SayHello('Joe Sir')并且因为您没有提供后缀SayHello,则会使用默认' Senior'