typescript-基础类型(三)

布尔值

//布尔类型
let flag: boolean = true
//  可以先声明再赋值
let bool: boolean
bool = false

数值

//数值类型
let num: number = 123
//可直接赋值   二进制   八进制   十进制  十六进制
num = 0x7e

字符串

//字符串类型
let str: string
str = 'abc'
console.log(`数据:${num}`)

数组

//数组类型
let arr: number[]
// 数组内的都是number类型
arr = [1,5,6]
//写法2(同上)
let arr2: Array<number>
//联合类-让数组内容多元化
let arr3: (string | number)[]
arr3 = [1,'数组']

元组

//元组类型(定义的数据类型一一对应)
let tuple: [string,number,boolean]
//注意: v < 2.6,元素可以多个['a',23,true,90],且后面的元素符合规定类型;v >= 2.6,只能一一对应
tuple = ['a',23,true]

枚举值

//枚举类型
enum Roles {
  //也可以指定,指定之后,自增+1
  //SUPER_ADMIN = 1
  SUPER_ADMIN,
  ADMIN,
  USER
}
console.log(Roles.SUPER_ADMIN)//0

any

//any类型--任意类型
let value: any
value = 'abc'
value = {
  name: '张三',
  age: 9
} 

void

//void类型 -- 什么类型都不是
const consoleText = (text: string): void =>{
  console.log(text)
}
// consoleText(123) //类型“number”的参数不能赋给类型“string”的参数
let v: void 
v = undefined
//开启严格模式   不能赋值null
// v = null

null和undefined

//null和undefined类型
let u: undefined
u = undefined
let n: null
n = null

never

  • never类型的值可以赋值给其他类型
//never类型
const errorFunc = (message: string): never =>{
  throw new Error(message)
}
// 死循环  返回值为never
const infiniteFunc = (): never =>{
  while(true){}
}

object

//Object类型(内存地址)
let obj = {
  name: '张三'
}

类型断言

  • 可以同<>和as指定类型
  • 推荐使用as.tsx中不能使用<>
//类型断言
const getLength = (target: string | number): number => {
  if((<string>target).length || (target as string).length === 0){
    return (<string>target).length
  }else{
    return target.toString().length
  }
}
getLength(1235)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值