typescript 联合类型

联合类型

let phone :number | string = 13987121814 //或者 '0871-3752'

function setBoolean (type:number|boolean):boolean {

    return !!type

}

let res1 = setBoolean(1)

console.log(res1)//true 0的时候为false

let res2 = setBoolean(false)

console.log(res2) //false  true的时候为true

交叉类型

interface Pople{

    name:string,

    age:number

}

interface Man{

    sex:number

}

const setMan = (man:Man & Pople) :void => {

    console.log(man)

}

setMan({

    name:'小芳',

    age:18,

    sex:0

}) //{ name: '小芳', age: 18, sex: 0 }

断言类型

let getLength =function (num:number|string) :void {

    // console.log(num.length)//报错,因为number不存在length属性

    //断言

    console.log((num as string).length)

}

getLength('12456')//5

getLength(12345)//undefined

const fnn = (type:any):boolean => {

    return type as boolean

}

const aa = fnn(1)

console.log(aa) //1 只能欺骗编译器,对运行的结果不产生影响,不能滥用断言

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值