2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

TypeScript 1.5 中加入了模块、修饰符、Sublime Text 的插件等新特性

  • 2015-04-06
  • 本文字数:811 字

    阅读完需:约 3 分钟

微软刚刚发布了 TypeScript 的 1.5 alpha 版本,添加了大量的新特性,包括:模块、修饰符(Decorator)、用于 Sublime Text 的插件,for…of 循环,ES6 Unicode、计算属性,并且支持以 ES5 为编译目标时也可以使用 let/const 特性。

模块是所有特性中最令人期待的一个,而 TypeScript 1.5 中终于加入了这一特性,并且它们的定义方式与 ES6 相同,包括默认的 export/import 标识符。以下代码片段展示了如何使用模块的方式:

复制代码
// math.ts
export function add(x, y) { return x + y }
export function subtract(x, y) { return x – y }
export default function multiply(x, y) { return x * y }
// main.ts
import {add, subtract} from "math";
import times from "math";

或是选择导入所有函数

复制代码
// main.ts
import * as Math from "math";

虽然微软也有打算支持现有的外部模块,但他们还是建议开发者“使用功能更强的 ES6 模块语法。”

新版本中还加入了一个新的 TypeScript 特性,当前还只是预览形式,这就是 _修饰符 _。这是一个 ES7 中的建议语法,按照修饰符这一提议的一位提议人 Yehuda Katz 所说:“这是元数据注解符(annotation)功能的严格超集”。以下这个代码片段就是一种使用修饰符的示例,它用于存储一个 getter/setter 对:

复制代码
class Person {
@memoize
get name() { return `${this.first} ${this.last}` }
set name(val) {
let [first, last] = val.split(' ');
this.first = first;
this.last = last;
}
}

微软同时也推出了一个 Sublime Text 的插件,允许使用 Sublime Text 这个编辑器的开发者在其中创建、格式化并重构 TypeScript 代码。这一插件支持 Linux、OSX 和 Windows 平台上的 Sublime Text 2 与 3 两个版本。

在 TypeScript 1.5 中出现的其它新特性包括:for…of 循环、ES6 Unicode、计算属性,并且支持以ES5 为编译目标时也可以使用let/const 特性。

查看英文原文: TypeScript 1.5: Modules, Decorators, Sublime Text Plug-in and More

2015-04-06 06:273290
用户头像

发布了 428 篇内容, 共 198.3 次阅读, 收获喜欢 39 次。

关注

评论

发布
暂无评论
发现更多内容

2023前端二面经典手写面试题

helloworld1024fd

JavaScript 前端

vue的两种服务器端渲染方案

京东科技开发者

Vue 服务端 nextjs nuxt 渲染方案

react源码中的生命周期和事件系统

flyzz177

React

佳杰云星:基于鲲鹏DevKit开发多云管理平台,云资源综合管理能力提升约25%

极客天地

React源码分析8-状态更新的优先级机制

goClient1992

React

聊聊火出圈的ChatGPT

江湖修行

人工智能 AI ChatGPT

PCB生产工艺|主流程之AOI,华秋一文读懂其子流程

华秋电子

瓴羊Quick BI可视化大屏功能强劲

对不起该用户已成仙‖

从React源码分析看useEffect

goClient1992

React

华为Push用户增长服务:精准触达,加速增长

HarmonyOS SDK

HMS Core

阿里前端二面经典手写面试题汇总

helloworld1024fd

JavaScript 前端

飞桨-鹏城云脑发行版亮相第四届启智开发者大会,软硬一体化助力科研

飞桨PaddlePaddle

深度学习 paddle 飞桨

GAIDC 2023盛会迎来大模型论坛“主场”,百度飞桨护航大模型产业发展

飞桨PaddlePaddle

深度学习 飞桨

实现一个简单的Database12(译文)

GreatSQL

sqlite greatsql greatsql社区

react源码分析:实现react时间分片

flyzz177

React

瓴羊Quick BI移动端自助分析功能受追捧

巷子

运联智库发布跨境电商物流50强排行榜

联营汇聚

MIAOYUN 2023年度战略共识会

MIAOYUN

战略共识 战略会

IoT设备身份三元组烧录方案汇总——实践类

阿里云AIoT

阿里云 物联网 IoT

解析关于Tomcat Servlet-request的获取请求参数及几种常用方法

华为云开发者联盟

开发 华为云 企业号 2 月 PK 榜 华为云开发者联盟

华为云携手金蝶,探索高成长型企业“数字化创新管理”之路

华为云开发者联盟

云计算 后端 华为云 企业号 2 月 PK 榜 华为云开发者联盟

js函数柯里化-面试手写版

helloworld1024fd

JavaScript 前端

React源码分析8-状态更新的优先级机制

goClient1992

React

react源码分析:babel如何解析jsx

flyzz177

React

从 Netflix 传奇看,结果导向的产品路线图如何制定?

LigaAI

敏捷开发 研发管理 技术管理 成长路线图 企业号 2 月 PK 榜

AIGC的隐私安全问题及隐私保护技术 | 社区征文

京东科技开发者

隐私计算 语言模型 ChatGPT 企业号 2 月 PK 榜 LLM

一个诡异的 Pulsar InterruptedException 异常

小小怪下士

Java 程序员 后端

HarmonyOS Connect “Device Partner”专场FAQ来啦!

HarmonyOS开发者

HarmonyOS

什么是物联网?常见IoT 物联网协议最全讲解——基础知识

阿里云AIoT

人工智能 安全 前端开发 网络协议 传感器

透明led显示屏的应用指南

Dylan

LED LED display LED显示屏

TypeScript 1.5中加入了模块、修饰符、Sublime Text的插件等新特性_JavaScript_Abel Avram_InfoQ精选文章