TypeScript 联合类型,类型推断,类型断言

联合类型

  • 取值可以为多种类型中的一个
function func(str: number | string):void{
    
    }

类型断言

  • 当变量需要调用某属性的时候,有不确定当前的类型是什么,可以使用类型断言;

类型断言的两种方式:
1,<类型> 变量名;
2,值 as 类型;

function getString(str: number | string): string{
    
    
    // 判断str是否是string类型时,通过.length的方式;
    // 但如果是number类型的时候str.length这种方式就会报错;
    // 所以通过类型断言,如果是string类型的话.....
	if((<string>str).length){
    
    
		//  相当于直接把str变成 string 类型,然后直接调用.length属性
		return (str as string).length
	} else {
    
    
		....
	}
}

类型推断

  • 没有明确的指定类型的情况下推断出一个类型;
let isStr; // any
isStr = 123;
isStr = '字符串';
console.log(isStr); // ‘字符串’

猜你喜欢

转载自blog.csdn.net/weixin_44684357/article/details/131927475