Runoob.ts文件
var name: string = "Lucy";
console.log(name)
// Lucy
编译原理:
ts: Runoob.ts
利用TSC进行编译:
tsc Runoob.ts
// 通过tsc得到如下文件
Runoob.js
// 执行node Runoob.js打印记过为 “Lucy"
编译顺序图:

编译多个文件:
tsc a.ts a2.ts a3.ts ...
tsc 常用编译参数如下表所示:
–help 显示帮助信息
–module 载入扩展模块
–target 设置 ECMA 版本
–declaration 额外生成一个 .d.ts 扩展名的文件。
tsc ts-hw.ts --declaration
// 以上命令会生成 ts-hw.d.ts、ts-hw.js 两个文件。
–removeComments 删除文件的注释
–out 编译多个文件并合并到一个输出的文件
-sourcemap 生成一个 sourcemap (.map) 文件。 sourcemap 是一个存储源代码与编译代码对应位置映射的信息文件。
–module noImplicitAny 在表达式和声明上有隐含的 any 类型时报错
–watch 在监视模式下运行编译器。会监视输出文件,在它们改变时重新编译。

eg:
let anyData: numer | string | boolean;
anyData = 1; // 正确
anyData = 'hanxu'; // 正确
anyData = true; // 正确
anyData = [1]; // 异常
console.log()
类型断言可以用来手动指定一个值的类型,即允许变量从一种类型更改为另一种类型,语法格式:
<类型>值
或:
值 as 类型
eg:
var person = '';
person = {name: "Mr Li"}
or
var person as string;
person = "Mr Li";
申明一个要使用的接口字段类型 Person的相关属性定义
interface Persion{
firstName:string,
lastName:string,
sayHi: ()=>string
}
const Lucy:Persion[] = [{
firstName: "Len",
lastName: "Lucy",
sayHi: ():string=>"Hi Lucy Len"
}]