怎样使用TypeScript进行开发

2,836 阅读2分钟

在介绍Typescript之前,我想先说一下JavaScript,我们都知道,JavaScript 是一门非常灵活的编程语言,它没有类型约束,一个变量可能初始化时是字符串,过一会儿又被赋值为数字。因为隐式类型转换的存在,有的变量的类型很难在运行前就确定。JavaScript是基于原型的面向对象编程,使得原型上的属性或方法可以在运行时被修改。函数可以赋值给变量,也可以当作参数或返回值。


什么是ts?为什么要使用ts?

  • ts是JavaScript的超集。
  • TypeScript是JavaScript类型的超集,它可以编译成纯JavaScript。
  • TypeScript可以在任何浏览器、任何计算机和任何操作系统上运行,并且是开源的。

最近开始使用TypeScript,今天打算写一期用ts开发的解析。(后边还会更其他的,这里就介绍一下ts的引入及基本创建)

要想用ts,首先要获取ts,有两种常用的方式获取ts:

  • 通过npm(Node.js包管理器)
  • 安装Visual Studio的TypeScript插件

因为我是用npm来进行安装的,所以这里讲一下用npm引入的方法

> npm install -g typescript

然后我们就开始编写第一个ts文件:

function name(e) {
    return "Hi, " + e;
  }
let name = "LiMing";
document.body.innerHTML = greeter(name);
// Hi, LiMing

首先我们创建home.ts这个文件,我们需要将上边的代码写入这个文件。
虽然我们使用了.ts扩展名,但是这段代码仅仅是JavaScript而已。 我们需要通过编译使它转化成ts代码

tsc home.ts

输出结果为一个home.js文件,它包含和输入文件中相同的JavsScript代码。 之后,我们就可以运行这个使用TypeScript写的JavaScript应用


ts好的一点在于它规定了变量的类型,所以我们要给上边方法里的参数e设定类型。

function name(e: string) {
    return "Hi, " + e;
  }
let name = "LiMing";
document.body.innerHTML = greeter(name);
// Hi, LiMing

但是到这里编译的话,会产生一个错误

home.ts(7,26): error TS2345: Argument of type 'number[]' is not assignable to parameter of type 'string'.

像这种,尝试删除home调用的所有参数。 ts会告诉你使用了非期望个数的参数调用了这个函数。 在这两种情况中,TypeScript提供了静态的代码分析,它可以分析代码结构和提供的类型注解。

要注意的是尽管有错误,home.js文件还是被创建了。 就算你的代码里有错误,你仍然可以使用ts。但在这种情况下,ts会警告你代码可能不会按预期执行。