如何将JavaScript程序移植到TypeScript?

译文
开发 前端
JavaScript最初于1995年发布,经历短短的发展阶段后,已成为许多网站和应用程序不可或缺的一部分。如今,JavaScript在客户端应用程序和服务器端应用程序中都占有一席之地。尽管这些年来JavaScript发生了许多变化,但开发人员仍然需要众多特性。

译者 | 布加迪

审校 | 重楼

JavaScript最初于1995年发布,经历短短的发展阶段后,已成为许多网站和应用程序不可或缺的一部分。如今,JavaScript在客户端应用程序和服务器端应用程序中都有一席之地。尽管这些年来JavaScript发生了许多变化,但开发人员仍然需要众多特性

TypeScript是一种扩展JavaScript的脚本语言,提供了许多期待已久的特性。类型注释、自定义类型和接口都是主要组件,还有提高生产力的更好工具。

为什么要转换?

面对重大项目转换语言可能会带来压力。对考虑这项任务的任何人来说值得庆幸的是,将一个项目从JavaScript移植到TypeScript的过程却很简单。

作为一种主要的编程语言JavaScript在过去几年越来越受欢迎。最初只用于网站的前端脚本,Node.js的发布JavaScript引入到服务器端,帮助提升了人气

虽然JavaScript最近变得越来越流行,但最新发现ES6依然缺少很多特性。对于许多开发人员来说,这些缺的特性限制了JavaScript种语言的有用性。

TypeScript旨在纠正这些问题,为此用额外的特性包装JavaScript,然后转译用户代码。一种具有JavaScript易用性和可用性的类型安全语言由此诞生

目前经有几个工具和框架TypeScript提供全面支持。长期以来,Angular一直使用TypeScript,连React也有实现TypeScript的方法。

TypeScript就像JavaScript增强版

TypeScript实现了开发人员经常JavaScript请求的许多特性。TypeScript以它实现的完整类型系统命名,包括类型检查、安全性和隐式类型等特性。TypeScript甚至允许定义和使用自定义命名空间。

TypeScript还包含接口、枚举和类型推断。TypeScript保留了对来自最新JavaScript实现特性以及旧特性的支持,添加了一套新特性。

总的来说,TypeScript致力于创建一个更安全的开发过程,辅以更强大的工具以帮助码农

它鼓励使用类型安全的代码

TypeScript使用内置的类型检查系统来验证变量类型。它包括一组标准类型,可以选择定义自己的类和类型。可以显式声明类型,也可以根据赋值推断类型。

TypeScript有几种标准的数据类型,包括字符串、数字、布尔值和元组。还有变量类型,比如unknownany,它们允许您使用弱类型代码。

TypeScript的类型推断允许通过TypeScript的转译器处理标准JavaScript代码,对这类代码甚至执行类型检查。

转译使它易于使用

从开发人员的角度来看,TypeScript最好的特性之一就是它输出的是常规的JavaScript。您可以通过名为转译的过程来运行TypeScript代码,这个过程类似编译。

译的结果不是可执行文件,而是使用代码原始语言以外的语言编写的脚本。

TypeScript代码被转译成JavaScript,然后可以在服务器或客户端上运行。这使您可以快速轻松地编写几乎可以在任何平台上运行的代码。

TypeScript帮助开发人员提高生产力

JavaScript添加类型不仅允许代码安全运行,还为开发人员提供了简化编码的工具。大多数现代IDE都提供TypeScript支持,允许像IntelliSense这样的代码补全工具为代码提供额外上下文。它还可以在时提供类型检查功能,帮助您更迅速揪出错误。

此外,TypeScript额外的数据结构和语法旨在提高代码的可读性。这些特性使用户更快速更轻松地创建高质量代码,并及早发现潜在问题。

如何移植代码?

如果您在开始着手全新的项目,创建新的TypeScript项目相当简单。然而,将一个已的项目转换TypeScript就有点复杂了。

在大多数正常情况下,将一个项目从一种语言转换成另一种语言可能令人望而生畏。然而,JavaScript转换成TypeScript异常简单。

TypeScript作为JavaScript的超集

TypeScript被认为是JavaScript的超集。这意味着TypeScript添加了额外的语法和功能,没有改变或删除其底层的核心功能。

对于开发人员来说,这意味着任何在JavaScript中正常运行的代码都会自动在TypeScript中正确运行。不管这个脚本是用NodeJS编写的Web服务器,还是一组用于网页的前端脚本,转换过程都非常简单。

在安装TypeScript转译器之后,您可以创建一个简单的tsconfig.json文件,内容如下

{
 "compilerOptions": {
 "outDir": "./build",
 "allowJs": true,
 "target": "es5"
 },
 "include": ["./src/**/*"]
}

所有适用的文件移到src目录并运行转译器。这将在build目录中创建生成JavaScript文件。

这些快速而简单的改变可将标准的JavaScript项目转换TypeScript项目。此后可以随意使用TypeScript提供的新特性,可以在变量上标注类型、实现自定义类型和定义接口。

在每次转译之后,您可以根据需要使用来自build目录的输出,只需将文件添加到任何项目中。转译器将对标准JavaScript进行类型检查,并将新特性转换有效的ES5脚本。

从JS转换成TS,您需要知道什么?

将一个项目从JavaScript转换TypeScript的过程非常简单。转换就像切换目录结构、添加配置文件和安装转译器一样简单。

然而,从新语言中获得所有好处可能是更漫长的项目。虽然TypeScript可以推断出项目中每个变量的类型,但它们应该被显式声明。回顾一番,为项目添加自定义类型、添加适当的注释和创建接口,这可能非常耗时。

然而这些特性添加到项目将便于您获得适当的类型检查和扩展工具带来的好处。大型项目构建起来将更快速轻松,您可以更早识别错误,新开发人员将更容易阅读您的代码。

原文标题:How to Port Your JavaScript Program to TypeScript,作者:Seth M. Thomas

责任编辑:华轩 来源: 51CTO
相关推荐

2011-05-04 09:29:22

2009-10-10 13:54:20

OPhone

2012-06-19 10:22:16

Windows Pho

2012-06-20 11:17:02

MemSQL

2011-04-13 11:11:36

VC++托盘程序

2012-08-17 11:04:57

IBMdW

2011-01-13 14:19:41

solarisLinux

2015-05-05 13:57:12

AndroidWindows

2022-11-25 16:27:07

应用开发鸿蒙

2020-11-18 09:29:06

NginxHTTPHTTPS

2020-11-10 08:00:00

机器学习技术科学

2015-03-18 10:29:01

私有云混合云云API

2022-04-06 11:33:43

Linux桌面GNOME 42

2023-11-11 19:07:23

SilverblueLinux

2015-09-07 17:45:04

升级UbuntuLinux

2011-10-09 12:59:54

DtraceLinux甲骨文

2017-09-30 16:18:00

HTML5代码对象

2021-11-15 10:20:50

Ubuntu22.04 LTS JLinux

2020-03-10 22:01:54

物联网安全物联网IOT

2023-09-12 12:14:05

Python程序矢量化
点赞
收藏

51CTO技术栈公众号