TypeScript 4.1 正式 GA

来源: OSCHINA
编辑: oschina
2020-11-23

TypeScript 4.1 已正式发布。

使用以下命令通过 npm 获取:

npm install -D typescript

新版本带来了不少新功能:新的检查标志、提升编辑器效率和速度。

function setVerticalAlignment(pos: "top" | "middle" | "bottom") {
// ...
}
setVerticalAlignment("middel");
//                   ~~~~~~~~
// error: Argument of type '"middel"' is not assignable to
//        parameter of type '"top" | "middle" | "bottom"'.

type Options = {
[K in "noImplicitAny" | "strictNullChecks" | "strictFunctionTypes"]?: boolean
};
// same as
//   type Options = {
//       noImplicitAny?: boolean,
//       strictNullChecks?: boolean,
//       strictFunctionTypes?: boolean
//   };

type ElementType<T> =
T extends ReadonlyArray<infer U> ? ElementType<U> : T;
function deepFlatten<T extends readonly unknown[]>(x: T): ElementType<T>[] {
throw "not implemented";
}
// All of these return the type 'number[]':
deepFlatten([1, 2, 3]);
deepFlatten([[1], [2, 3]]);
deepFlatten([[1], [[2]], [[[3]]]]);

interface Options {
path: string;
permissions: number;
// Extra properties are caught by this index signature.
[propName: string]: string | number;
}
function checkOptions(opts: Options) {
opts.path // string
opts.permissions // number
// These are all allowed too!
// They have the type 'string | number'.
opts.yadda.toString();
opts["foo bar baz"].toString();
opts[Math.random()].toString();
}

// @filename: first.ts
export class C { }

// @filename: main.ts
import * as first from './first';

/**
 * @see first.C
 */
function related() { }

更多内容查看发布公告

展开阅读全文
6 收藏
分享
加载中
精彩评论
以前TypeScript和VSCode每次更新eechen都出來批判一番,現在不知是它們變了還是eechen忘了初心。
2020-11-23 09:38
19
举报
很久不见他说话了 感觉osc也变了 物是人非了
2020-11-23 09:59
8
举报
有了ts,忘了js,哈哈哈
2020-11-25 16:24
1
举报
越来越好了。
2020-11-23 09:04
1
举报
最新评论 (14)
有了ts,忘了js,哈哈哈
2020-11-25 16:24
1
回复
举报
学不动就等着内卷吧。
2020-11-24 08:47
0
回复
举报
这么多语言,学不过来了.
2020-11-23 10:26
0
回复
举报
无限递归不错。以前会报错,然后展开手写到第6层左右就也开始报错了
2020-11-23 09:53
0
回复
举报
求一个TypeScript练手小项目,我看网上说的练手项目,都是和Vue这些一起的,有没有单独就可以搞的
2020-11-23 09:48
0
回复
举报
以前TypeScript和VSCode每次更新eechen都出來批判一番,現在不知是它們變了還是eechen忘了初心。
2020-11-23 09:38
19
回复
举报
很久不见他说话了 感觉osc也变了 物是人非了
2020-11-23 09:59
8
回复
举报
一切都要从动弹改了之后说起
2020-11-23 19:00
0
回复
举报
去知乎了
2020-11-24 17:23
0
回复
举报
TypeScript 已经打破了动态语言灵活性绝对领先于静态语言的问题
2020-11-25 13:38
0
回复
举报
2020-11-26 15:30
0
回复
举报
可以关闭索引类型检查。。。这操作真是鬼才。
2020-11-23 09:34
0
回复
举报
typescript 不用管运行时效率,全力折腾语法糖,有点意思~^_^
2020-11-23 09:22
0
回复
举报
越来越好了。
2020-11-23 09:04
1
回复
举报
更多评论
14 评论
6 收藏
分享
返回顶部
顶部