TypeScript ?
t
y
p
e
s
c
r
i
p
t
≈
t
y
p
e
+
J
a
v
a
S
c
r
i
p
t
typescript \approx type + JavaScript
typescript≈type+JavaScript
e
n
h
a
n
c
e
(
J
a
v
a
S
c
r
i
p
t
)
=
T
y
p
e
S
c
r
i
p
t
现
有
的
J
a
v
a
S
c
r
i
p
t
程
序
可
以
运
行
T
y
p
e
S
c
r
i
p
t
环
境
中
enhance(JavaScript)=TypeScript\\ 现有的JavaScript程序可以运行TypeScript环境中
enhance(JavaScript)=TypeScript现有的JavaScript程序可以运行TypeScript环境中
Type
- 基础使用
# JavaScript --- 动态类型(隐式转换)
let a ;
# TypeScript --- 固定类型(数值类型) 如果需要变动的类型可以设置为 Any 类型 let x: any;但是将一个any对象赋值给另一个变量,另一个变量的类型也将变为any
let a: number ;
- 类型定义和赋值同时进行
# 类型定义和赋值同时进行
let b = false ; # 在TypeScript中之后只能赋值真或假
或
let b : boolean = false ;
- 函数中的类型
function staticinfunc (a: number,b : boolean):string { // 输入一个数值和一个Boolean,返回一个字符串
return "Hello World"
}
对象
# 一切皆对象
let a:object;
var a = {};
# 声明+初始化
var a= {
key1: "key1",
key2: 123,
key3: function() {
return "key3";
},
}
# 先声明再初始化
let b= {
key1:string,
}
b = { key1:"key1"}
# ?: 可选属性(初始化时可以没有)
let c= {
key1:string , key2?:number
}
不常用的属性构造方法
# [propName:sting]:any 可放入任意名称类型的属性
let c= {
key1:string , [propName:sting]:any
}
参考与更多
更多百度对TypeScript 的解释:
TypeScript 支持为已存在的 JavaScript 库添加类型信息的头文件,扩展了它对于流行库的支持,如 jQuery,MongoDB,Node.js 和 D3.js 等。这些第三方库的类型定义本身也是开源的,所有开发者都能参与贡献。
typeScript是微软开发的一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成。TypeScript通过TypeScript编译器或Babel转译为JavaScript代码,可运行在任何浏览器,任何操作系统。TypeScript添加了很多尚未正式发布的ECMAScript新特性(如装饰器 [2] )。2012年10月,微软发布了首个公开版本的TypeScript,2013年6月19日,在经历了一个预览版之后微软正式发布了正式版TypeScript。当前最新版本为TypeScript 4.5
更多基础类型 TypeScript 和 JavaScript 没有整数类型。
TypeScript :如果某个属性的值是计算出来的,那么它后面一位的成员必须要初始化值。
# 类似枚举类型的联合类型
let gender : "male" | "famale" ;
let password : sting | number ;