写点什么

TypeScript 1.3 发布: 支持 protected 访问修饰符和元组类型

  • 2014-11-19
  • 本文字数:945 字

    阅读完需:约 3 分钟

Microsoft 已经发布了 TypeScript 1.3 ,而这距离 2.0 路线图的发布仅仅过去了 20 多天,虽然时间很短,但是新版本实现了路线图中提到的全部内容:语言层面支持“protected”访问修饰符以及元组类型,工具方面提供了更好的智能感知能力。

“protected”访问修饰符是开发者高度要求的功能特性,它能够让开发人员在TypeScript 中使用更多的面向对象模式。例如,在下面这段代码中我们通过该修饰符让子类可以使用父类的setElement 方法,但是其他部分的代码却根本不知道该方法的存在。

复制代码
class List<T> {
private contents: T[];
constructor() {
this.contents = [];
}
protected setElement(index: number, item: T) {
this.contents[index] = item;
}
}
class Stack<T> extends List<T> {
currentIndex: number;
constructor() {
super();
this.currentIndex = 0;
}
public push(item: T) {
this.setElement(this.currentIndex, item);
this.currentIndex++;
}
}
var stack = new Stack<number>();
stack.setElement(0, 1); // error 'setElement' is protected and only visible to subclasses

元组类型是语言层面的另一个特性,它能够让我们扩展现有的类型系统从而使用即将发布的 ECMAScript 6 标准中包含的各种模式。通过元组类型,我们可以准确地描述混合类型数组中数据的类型,例如下面这个例子:

复制代码
var tuple: [number, string] = [1, "bob"];
var secondElement = tuple[1];  // secondElement now has type 'string'

在工具层面,TypeScript 1.3 基于 Roslyn 构建了一个新的 Visual Studio 2015 语言服务,借助于该服务用户能够更快、更精确地找到所有的引用;可以像 C#那样使用“回车”或者“Tab”键从完成列表中提交选择。另外,新版本还增强了大纲和着色功能,并提升了 rename 的精度,为了更好地支持函数式编程风格,编辑器还改进了嵌套函数的处理机制。

TypeScript 1.3 已经内置到了 Visual Studio 2015 预览版中,但是如果你使用的是 Visual Studio 2013,那么可以通过工具安装 NPM 以及代码三种途径获取。


感谢崔康对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-11-19 04:141974
用户头像

发布了 321 篇内容, 共 134.7 次阅读, 收获喜欢 19 次。

关注

评论

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

软件测试 | 测试开发 | 接口测试中如何使用Json 来进行数据交互 ?

测吧(北京)科技有限公司

json

技术分享 | 数据持久化技术(Java)

霍格沃兹测试开发学社

技术分享 | 测试平台开发-前端开发之Vue.js 框架(一)

霍格沃兹测试开发学社

BI如何配置“花生壳”,看这一篇就够了

葡萄城技术团队

内网穿透 可视化数据

2. 背包问题

小白钊钊

算法 8月月更

Spring Security系列教程05--实现HTTP摘要认证

一一哥

HTTP 认证 Spring Security OAuth

NFT系统:数字藏品交易平台app开发功能

开源直播系统源码

NFT 数字藏品 数字藏品软件开发 数字藏品开发 数字藏品系统

云聚华为伙伴暨开发者大会GaussDB专场,与客户伙伴共话金融科技新发

IT资讯搬运工

华为云GaussDB深耕数据库根技术,助力能源行业数字化转型

IT资讯搬运工

技术分享 | 软件项目管理与跨部门沟通协作

霍格沃兹测试开发学社

软件测试 | 测试开发 | 使用 cURL 发送请求

测吧(北京)科技有限公司

curl

技术分享 | 测试平台开发-前端开发之Vue.js 框架的使用(二)

霍格沃兹测试开发学社

1. 关联容器

小白钊钊

c++ 8月月更

华为云GaussDB践行云原生 带来极致弹性、全域可用和极简体验

IT资讯搬运工

技术分享 | 被测系统架构与数据流分析

霍格沃兹测试开发学社

软件测试 | 测试开发 | app自动化测试(Android)-- 属性获取与断言

测吧(北京)科技有限公司

自动化测试

技术分享 | 黑盒测试方法论—等价类

霍格沃兹测试开发学社

华为云联合信通院发布业界首个《云原生数据库白皮书》

IT资讯搬运工

软件测试 | 测试开发 | 接口测试之HTTP、HTTPS 抓包分析

测吧(北京)科技有限公司

HTTP

全新EMQX Dashborad:易操作、可观测,集群数据尽在掌握

EMQ映云科技

物联网 IoT mqtt emqx 8月月更

排队助手:3 张图带你看懂「队伍合页」的经典案例场景

天天预约

小程序制作 SaaS应用 排队 排队工具

Spring Security系列教程03--实现HTTP基本认证

一一哥

spring security HTTP springboot basic spring-boot

兆骑科创高层次人才创新创业大赛,项目落地,云路演

兆骑科创凤阁

学习开发技术有哪些比较好的方法?

小谷哥

软件测试 | 测试开发 | 接口测试价值与体系

测吧(北京)科技有限公司

接口测试

深度解析全链路压测实施过程

穿过生命散发芬芳

全链路压测 8月月更

Spring Security系列教程02--创建SpringSecurity项目

一一哥

Java spring security springboot 安全框架 spring-boot

技术分享 | 被测项目需求你理解到位了么?

霍格沃兹测试开发学社

秋招如何抱佛脚?2021最新大厂Java面试真题合集(附权威答案)

收到请回复

Java 架构 语言 & 开发

Spring Security系列教程04--实现Form表单认证

一一哥

springboot Spring Security OAuth 表单认证

兆骑科创双创服务平台,项目对接,人才引进

兆骑科创凤阁

TypeScript 1.3发布:支持protected访问修饰符和元组类型_语言 & 开发_孙镜涛_InfoQ精选文章