标签:typescript const string number 类型 null name
基础类型
Boolean
number
string
null
undefined
any
void
never
object type
- object{} 对象类型
let obj33:{name:string,age:number}={
name:'11',
age:11
}
*array[] 数组类型
const list: number[] = [12, 23, 34]
//泛型
const listA: Array<number> = [1, 2, 3]
- class 类型
class Person {}
const LinYY: Person = new Person()
- fn() 类型
const getNumber: () => number = () => {
// return 'LinYY' 报错
return 123
}
// 要求返回值是string 字符类型
const getString: () => string = () => {
return 'LinYY'
// return 123
}
interface 自定义类型
//interface
interface Point {
x: number,
y: string
}
const point: Point ={
x:123,
y:'123'
}
type alias 类型别名 不是ts的基本数据类型,常用于提取公共类型
type User = { name: string, age: number }
let male: User = {name: 'LinYY', age: 18}
let famale: User = {name: 'nana', age: 18}
数组和元组
数组的类型注解
- 类型[] Array<类型>
//对象数组
const objarr:{name:string,age:number}[]=[{
name:'123',
age:12
}
- 对于复杂的对象数组,可以采用类型别名type alias
typescript断言
类型断言
- ‘尖括号’语法
let someValue:any = 'this is a string';
let str22:number=(<string>someValue).length;
// as 语法
let str33:number=(someValue as string).length;
非空断言
- 在上下文中当类型检查器无法断定类型时,一个新的后缀表达式操作符!可以用于断言操作对象是非null和非undefined类型。
- 即将x从类型null和undefined中排除
忽略undefined和null类型
function my(mystr: string | undefined | null) {
// const str:string=mystr;
const str2:string=mystr!;
}
调用函数时忽略undefined
type Num=()=>number;
function fn(num:Num|null){
const num1=num();//error
const num2=num!();
}
确定赋值断言
类型守卫
联合类型
- 联合守通常与null和undefined一起用
TS中的this TS是JS的超集 this指向相同
标签:typescript,const,string,number,类型,null,name 来源: https://www.cnblogs.com/Goodnighter/p/16673522.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。