TypeScript 2.0
对函数或类表达式的捕获变量不进行类型细化(narrowing)
var x: number | string;
if (typeof x === "number") {
function inner(): number {
return x; // Error, type of x is not narrowed, c is number | string
}
var y: number = x; // OK, x is number
}var x: number | string = "a";
if (typeof x === "string") {
setTimeout(() => console.log(x.charAt(0)), 0);
}
x = 5;泛型参数会进行类型细化
只有get而没有set的存取器会被自动推断为readonly属性
readonly属性在严格模式下函数声明不允许出现在块(block)里
TemplateStringsArray现是是不可变的
TemplateStringsArray现是是不可变的Last updated