TypeScript 1.5

    这是为了遵循ES6箭头函数的语义。之前箭头函数里的arguments会绑定到箭头函数的参数。参照ES6规范草稿 9.2.12,箭头函数不存在arguments对象。 从TypeScript 1.5开始,在箭头函数里使用arguments会被标记成错误以确保你的代码转成ES6时没语义上的错误。

    例子:

    推荐:

    对于正常的枚举,在1.5之前,编译器_仅会_内联常量成员,且成员仅在使用字面量初始化时才被当做是常量。这在判断检举值是使用字面量初始化还是表达式时会行为不一致。从TypeScript 1.5开始,所有非const枚举成员都不会被内联。

    推荐: 在枚举声明里添加const修饰符来确保它总是被内联。 更多信息,查看。

    在1.5之前,上下文的类型不会作用于括号表达式内部。这就要求做显示的类型转换,尤其是在_必须_使用括号来进行表达式转换的场合。

    在下面的例子里,m具有上下文的类型,它在之前的版本里是没有的。

    更多信息,查看#1425和。

    变通方案:

    你可以使用旧的lib.d.ts配合新版本的编译器。你需要在你的工程里引入之前版本的一个拷贝。这里是本次改动之前的lib.d.ts文件(TypeScript 1.5-alpha)

    变动列表:

    • 属性selectionDocument类型上移除
    • 属性clipboardDataWindow类型上移除
    • 删除接口MSEventAttachmentTarget
    • 属性onresizedisableduniqueIDremoveNodefireEventcurrentStyleruntimeStyleHTMLElement类型上移除
    • 属性urlEvent类型上移除
    • 属性execScriptnavigateitem从类型上移除
    • 属性parentWindowHTMLDocument类型上移除
    • 属性setCapture被完全移除
    • 属性releaseCapture被完全移除
    • 属性setAttributestyleFloatpixelLeftCSSStyleDeclaration类型上移除
    • 属性selectorTextCSSRule类型上移除
    • CSSStyleSheet.rules现在是CSSRuleList类型,而非MSCSSRuleList
    • documentElement现在是Element类型,而非HTMLElement
    • Event具有一个新的必需属性returnValue
    • Node具有一个新的必需属性baseURI
    • Element具有一个新的必需属性classList
    • Location具有一个新的必需属性origin
    • CSSStyleRule具有一个新的必需属性readonly
    • 属性execUnsafeLocalFunctionMSApp类型上移除
    • 全局方法toStaticHTML被移除
    • HTMLCanvasElement.getContext现在返回CanvasRenderingContext2D | WebGLRenderingContex
    • 移除扩展类型DataviewWeakmapMapSet
    • XMLHttpRequest.send具有两个重载send(data?: Document): void;send(data?: String): void;
    • window.orientation现在是string类型,而非number
    • 特定于IE的attachEventdetachEventWindow上移除

    以下是被新加的DOM类型所部分或全部取代的代码库的代表:

    • DefinitelyTyped/auth0/auth0.d.ts
    • DefinitelyTyped/gamepad/gamepad.d.ts
    • DefinitelyTyped/interactjs/interact.d.ts
    • DefinitelyTyped/webcrypto/WebCrypto.d.ts

    按照,类代码体现在以严格模式进行解析。行为将相当于在类作用域顶端定义了"use strict";它包括限制了把和eval做为变量名或参数名的使用,把未来保留字做为变量或参数使用,八进制数字字面量的使用等。