搜索
简帛阁>技术文章>详解TypeScript的基础类型

详解TypeScript的基础类型

布尔类型

// 布尔类型--->boolean
// let 变量名:数据类型 = 值
let flag: boolean = true;
console.log(flag)

数字类型

// 数字类型--->number
let a1: number = 10 // 十进制
let a2: number = 0b1010 // 二进制
let a3: number = 0o12// 八进制
let a4: number = 0xa // 十六进制
console.log(a1 + a2 + a3 + a4)

字符串类型

// 字符串类型--->string
let str1: string = '床前明月光';
let str2: string = '地上鞋两双';
console.log(str1 + ',' + str2)

字符串和数字进行拼接

let str3: string = '我现在的岁数:'
let a5: number = 24
console.log(`${str3}${a5}`)

总结:ts中变量一开始是什么类型,那么后期赋值的时候,只能用这个类型的数据,是不允许用其他类型的数据赋值给当前的这个变量中

undefined和 null

// undefined和 null都可以作为其他类型的子类璧,把undefined和nu1l赋值给其他类型的变量的,如: number类型的变量
let und: undefined = undefined
let n1l: null = null
console.log(und)
console.log(n1l)

数组类型

// 方式一:let变量名:数据类型[]=[值1,值2,值3,...]
let arr1: number[] = [10, 20, 30, 40, 50]
console.log(arr1);
// 方式二:泛型的写法
// 语法: let变量名: Array<数据类型>=[值1,值2,值3]
let arr2: Array<number> = [100, 200, 300]
console.log(arr2);

注意问题:数组定义后,里面的数据的类型必须和定义数组的时候的类型是一致的,否则有错误提示信息,也不会编译通过的

元组类型

// 元组类型:在定义数组的时候,类型和数据的个数一开始就已经限定了
let arr3: [string, number, boolean] = ['小甜甜', 100, true];
console.log(arr3)
// 注意问题:元组类型在使用的时候,数据的类型的位置和数据的个数应该和在定义元组的时候的数据类型及位置应该是一致的
console.log(arr3[0].split(''));
console.log(arr3[1].toFixed(2));

枚举类型

enum Color {
       red,
       green,
       blue
}
// 定义一个Color的枚举类型的变量来接收枚举的值
let color: Color = Color.red
console.log(color);
console.log(Color[2])

any类型

let str5: any = 100;
str5 = '宇智波带土'
console.log(str5);
// 当一个数组中要存储多个数据,个数不确定,类型不确定,此时也可以使用any类型来定义数组
let arr6: any = [100, '宇智波带土', true];
console.log(arr6)
// 这种情况下也没有错误的提示信息, any类型有优点,也有缺点
console.log(arr6[1].split(''));

void类型

function getobj(obj: object): object {
       console.log(obj);
       return {
           name: '卡卡西',
           age: 27
       }
}
console.log(getobj({ name: '佐助', age: 20 }))

联合类型

 // 需求1:定义一个函数得到一个数字或字符串值的字符串形式值
function getString(str: number | string): string {
      return str.toString();
}
console.log(getString('萨斯给'))
 
// 需求2:定义一个一个函数得到一个数字或字符串值的长度
function getString1(str: number | string): number {
      return str.toString().length
      if ((<string>str).length) {
          return (str as string).length
      } else {
          return str.toString().length
      }
}
  console.log(getString1(12345))
  console.log(getString1('12345'))

总结

目录布尔类型数字类型字符串类型字符串和数字进行拼接undefined和null数组类型元组类型枚举类型any类型void类型联合类型总结布尔类型//布尔类型>boolean//let变量名:数据
目录1基础类型2对象类型21数组22元组23对象3类型推断31类型联合中的类型推断32上下文类型4类型断言TS静态类型可以人为分为两类:基础类型:像布尔值(boolean)、数字(number)
TypeScript类型JavaScript语言数据类型包括以下7种:1boolean(布尔),true||false2null,表明null值得特殊关键字,JavaScript是大小写敏感
录1数字枚举2字符串枚举3反向映射4异构枚举5常量枚举6枚举成员类型和联合枚举类型(1)枚举成员类型(2)联合枚举类型7枚举合并前言:TypeScript在ES原有类型基础上加入枚举类型,使得在Ty
2021年,TypeScript非常火热,前端各大主流框架和工具,都在向TypeScript靠拢,TypeScript让前端开发复杂大型项目更加严谨。极大降低了代码出现bug几率,也大大增强了代
概述在TypeScript中使用联合类型时,往往会碰到这种尴尬情况:interfaceBird{//独有方法fly();//共有方法layEggs();}interfaceFish{//独有方法s
本文总结一下TypeScript类型声明书写,很多时候写TypeScript不是问题,写类型就特别纠结,我总结下,我在使用TypeScript中遇到问题。如果你遇到类型声明不会写时候,多看看lo
一、基础类型1、任意类型any2、数字类型number3、字符类型string4、布尔类型boolean5、数组类型(无关键字)定义存储各种类型数据数组时letarrayList:any[][1,
概述TypeScript21引入了映射类型,这是对类型系统一个强大补充。本质上,映射类型允许w咱们通过映射属性类型从现有类型创建新类型。根据咱们指定规则转换现有类型每个属性。转换后属性组成
编写TS时,它做了比我们看到更多事情,例如类型保护机制。让我们编写代码更加严谨,至于怎么回事,让我们来看看吧。由于这些机制存在,就算你仍旧以JS原生书写方式,也能帮助你提前发现代码中潜在