美文网首页
typeScript学习(一)

typeScript学习(一)

作者: Yinzhishan | 来源:发表于2020-01-03 15:56 被阅读0次

什么是 TypeScript

TypeScript 是 JavaScript 的一个超集,主要提供了类型系统对 ES6 的支持,它由 Microsoft 开发,代码开源于 GitHub 上。
其次引用官网的定义:

TypeScript 是 JavaScript 的类型的超集,它可以编译成纯 JavaScript。编译出来的 JavaScript 可以运行在任何浏览器上。TypeScript 编译工具可以运行在任何服务器和任何系统上。TypeScript 是开源的。

安装 TypeScript

TypeScript 的命令行工具安装方法如下:

npm install -g typescript

以上命令会在全局环境下安装 tsc 命令,安装完成之后,我们就可以在任何地方执行 tsc 命令了。
编译一个 TypeScript 文件很简单:

tsc hello.ts

我们约定使用 TypeScript 编写的文件以 .ts 为后缀,用 TypeScript 编写 React 时,以 .tsx 为后缀。

Hello TypeScript

将以下代码复制到 hello.ts 中:

function  sayHello(person:  string)  {

 return  'Hello, '  + person;

}

let user =  'Tom';

console.log(sayHello(user));

然后执行

tsc hello.ts

这时候会生成一个编译好的文件 hello.js

function  sayHello(person)  {
 return  'Hello, '  + person;
}
var user =  'Tom';
console.log(sayHello(user));

TypeScript 中,使用 : 指定变量的类型,: 的前后有没有空格都可以。

上述例子中,我们用 : 指定 person 参数类型为 string。但是编译为 js 之后,并没有什么检查的代码被插入进来。

TypeScript 只会进行静态检查,如果发现有错误,编译的时候就会报错。

let 是 ES6 中的关键字,和 var 类似,用于定义一个局部变量,可以参阅 let 和 const 命令

下面尝试把这段代码编译一下:

function  sayHello(person:  string)  {
 return  'Hello, '  + person;
}
let user =  [0,  1,  2];
console.log(sayHello(user));

编辑器中会提示错误,编译的时候也会出错:

index.ts(6,22): error TS2345: Argument of type  'number[]' is not assignable to parameter of type  'string'.

但是还是生成了 js 文件:

function  sayHello(person)  {
 return  'Hello, '  + person;
}
var user =  [0,  1,  2];
console.log(sayHello(user));

TypeScript 编译的时候即使报错了,还是会生成编译结果,我们仍然可以使用这个编译之后的文件。

如果要在报错的时候终止 js 文件的生成,可以在 tsconfig.json 中配置 noEmitOnError 即可。关于 tsconfig.json,请参阅官方手册中文版)。

本文摘自typeScript入门教程,作为学习记录使用,请见谅!

相关文章

网友评论

      本文标题:typeScript学习(一)

      本文链接:https://www.haomeiwen.com/subject/vtnzoctx.html