javascript - 如何正确使用 lambda 函数作为参数?
问题描述
如果我有这样的声明:
public startDate = this.formatDate(new Date());
我不想传递 new Date(),而是传递由函数创建的日期。我知道我可以做到:
public startDate = this.formatDate(this.getDateFunc());
但是有没有办法用 lambda 函数来做到这一点?我尝试查找它,但我发现的所有帖子都在谈论函数作为定义中的参数。
我想做类似的事情:
public startDate = this.formatDate(() => {...});
解决方案
class A {
public startDate = this.dateFactory();
constructor(
private dateFactory,
) {}
...
}
// somewhere in code
new A(() => new Date());
推荐阅读
- javascript - 有人开始流式传输时的自动角色
- c++ - 了解复制构造函数的工作
- javascript - Angular:使用 *ngIf 隐藏组件不起作用
- excel - 从 S3 下载时 Excel 文件损坏
- python - 带有芹菜的 django 中的 TemplateDoesNotExist 错误
- html - 在角度输入键后如何聚焦按钮
- sql - 不支持显示触发
- spring - 包括 Spring Security Headers,仍然收到“Header Not Set”漏洞警告
- python - Tensorflow 提高测试精度
- openshift - Openshift 已删除 Cronjob 仍在运行