【发布时间】:2015-11-29 13:36:07
【问题描述】:
只是为了娱乐,我试图在包含闭包的代码中使用 TypeScript 的强类型。原始 JavaScript 代码如下所示:
var func = (function() {
var private_count = 0;
var increment = function() {
private_count += 1;
return private_count;
}
return increment;
}());
这是我用 TypeScript 实现这一点的最佳尝试:
var func: ()=>()=>number = (function(): ()=>number {
var _count: number = 0;
var increment: ()=>number = function(): number {
_count += 1;
return _count;
}
return increment;
}());
func 是一个函数,它返回一个返回数字的函数。我已将其类型设置为 '()=>()=>number',但编译器不喜欢这样。我知道这不是 TypeScript 最实际的用途,但是有人对修复编译错误有任何想法吗?
【问题讨论】:
-
您使用 IIFE 是否有特殊原因?
标签: javascript typescript typescript1.5