ARTICLE / 阮一峰

《TypeScript 教程》发布了

2023年08月08日 02:54 · 来自 阮一峰

阅读原文 → 收藏
>p<长话短说,我写了一本>a href="https://wangdoc.com/typescript/"<《TypeScript 教程》>/a<,已经发布在>a href="https://wangdoc.com/"<网道>/a<,欢迎大家访问。>/p< >p<>a href="https://wangdoc.com/typescript/"<>img src="https://cdn.beekka.com/blogimg/asset/202308/bg2023080705.webp" alt="" title="" /<>/a<>/p< >p<我以前写过>a href="https://wangdoc.com/javascript/"<《JavaScript 教程》>/a<和>a href="https://wangdoc.com/es6/"<《ES6 教程》>/a<,很自然地,一直有人问,有没有>a href="https://wangdoc.com/typescript/"<《TypeScript 教程》>/a<?>/p< >p<嗯......说实话,我一开始不想写。>/p< >p<>img src="https://cdn.beekka.com/blogimg/asset/202308/bg2023080706.webp" alt="" title="" /<>/p< >p<我那时的想法是,TypeScript 就是为 JS 语言添加静态类型系统。如果你真需要静态类型,可以考虑使用其他更成熟的语言(比如 Rust 和 Java),再编译成 JS(wasm 模块),何必新学一门语言呢。>/p< >p<但是,形势比人强。TypeScript 越来越流行,成为前端开发的主流工具,各种项目纷纷移植过去。我就逐渐改变了想法,觉得还是应该上车。>/p< >p<>img src="https://cdn.beekka.com/blogimg/asset/202308/bg2023080707.webp" alt="" title="" /<>/p< >p<2021年底,我开始动笔,没想到一写,就是断断续续一年多。>/p< >p<写作过程很痛苦,我低估了 TypeScript 的难度。它为了适配 JavaScript,有很多不符合直觉的规则,内容又多又杂。>/p< >p<加之我对很多地方不够熟悉,边写边查资料,更加拖延了写作进度。>/p< >p<今年3月份,我已经快写完了,>a href="https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-0.html"<TypeScript 5.0>/a< 突然发布了,装饰器(Decorators)改用全新语法。我不得不重写这一章,于是装饰器现在就有>a href="https://wangdoc.com/typescript/decorator.html"<新语法>/a<和>a href="https://wangdoc.com/typescript/decorator-legacy.html"<旧语法>/a<两章,因为 TypeScript 同时支持这两者。>/p< >p<>img src="https://cdn.beekka.com/blogimg/asset/202308/bg2023080708.webp" alt="" title="" /<>/p< >p<如今终于完稿,如释重负,欢迎大家多>a href="https://github.com/wangdoc/typescript-tutorial/issues"<提供反馈>/a<。>/p< >p<这个教程采用创意共享许可证,>strong<免费使用,但需要保留署名>/strong<,也就是保留出处。源码放在 >a href="https://github.com/wangdoc/typescript-tutorial"<GitHub>/a<,大家发现任何问题,欢迎提交 Issue 和 PR。>/p< >p<(完)>/p< >div style="color:#556677;line-height:160%;padding:0.3em 0.5em;border:1px solid #d3d3d3;margin:1em;background-color:#AAD2F0;-moz-border-radius: 10px;-webkit-border-radius:10px;border-radius: 10px;"<>h3<文档信息>/h3< >ul< >li<版权声明:自由转载-非商用-非衍生-保持署名(>a href="http://creativecommons.org/licenses/by-nc-nd/3.0/deed.zh"<创意共享3.0许可证>/a<)>/li< >li<发表日期: >abbr class="published" title="2023-08-08T10:54:29+08:00"<2023年8月 8日>/abbr<>/li< >/ul<>/div<>div style="color:#556677;line-height:160%;padding:0.3em 0.5em;margin:1em;-moz-border-radius: 10px;-webkit-border-radius:10px;border-radius: 10px;"<>/div<