【发布时间】:2013-08-19 03:44:02
【问题描述】:
我的印象是 TypeScript 允许您采用有效的 JavaScript 程序并通过使一些关键符号类型安全来“强制”类型。这将通过所有用法传播类型,并使您更新所有符号引用。
这似乎是不正确的。在以下示例中,makeDiv 函数调用了类型化的 make 函数,而不检查参数类型。
// strongly typed arguments
function make(tagName: string, className: string) {
alert ("Make: " + className.length);
}
// no typing
function makeDiv(className) {
// calling the typed function without type checking
return make("div", className);
}
makeDiv("test");
makeDiv(6); // bang!
我在这里错过了什么吗?有没有办法强制执行“更严格”的类型检查?还是这是 TypeScript 创作者做出的设计决定?
【问题讨论】:
标签: javascript typescript