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);

最佳答案

您将需要调用SayHello(name, suffix: suffix);以获得所需的结果。
您可以有效地调用SayHello('Joe Sir'),并且由于未提供后缀SayHello会采用默认的' Senior'

关于dart - 在dart.js中使用可选,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22411392/

10-11 22:38