Skip to content

基础类型

原始数据类型

原始数据类型
布尔值:boolean
数字:number
字符串:string
null
underfined
symbol
空值:void 函数没有返回值的时候使用
*** 使用原始数据类型,都小写
数组:Array
任意类型:any
Never:表示的是那些永不存在的值的类型
元组 Tuple
枚举:(enum)

非原始数据类型

非原始数据类型 : object、Object、{}
    object : 不能写原始类型 ==> let num1:object = 213;
    Object、{} : 基本一样

    ***注意:平时小写的,用来类型区分,Object、{}无法区分

数组类型:Array有两种方式

第一种

var arr:number[]=[1,2,3];
var arr1:String[]=['1','2','3'];

第二种

var arr2:Array<number>=[1,2,3];
var arr3:Array<String>=['1','2','3'];

联合类型 | 或的关系

数据类型:let ant:number|string|boolean = 10;
常量:let ant1: 1|'2' = 1;
对象:let obj:{a:number} | {b:string} = {a:1,b:"1"};
数组:let arr2:(string|number|boolean)[] = ['2',1];

交叉类型 : &

let obj2:{age:number} & {sex:string} & {name:string} = {
    name:'张三',
    age:20
  }

任意类型:any

let oBox:any=document.getElementById('box');
oBox.style.color='red'

空值:void

run();//表示方法没有返回任何类型
function run():void{
    console.log('run')
}

Never:表示的是那些永不存在的值的类型

var a:never;
    a=(()=>{
    throw new Error('错误')
})()

null和underfined

//null和underfined
var num1:undefined;

var num2:number|undefined;
num2=123;
console.log(num2);

//一个元素可能是number  underfined  null;
var num3:number|undefined|null;
num3=456

元组 Tuple(规定数组显示)

// Declare a tuple type
let x: [string, number];
// Initialize it
x = ['hello', 10]; // OK
//二维
let x1: [string, number][] = [['hello', 10],['hello', 10],['hello', 10]];
console.log(x1)
let arr4:[number,String]=[1,'2'];

枚举:(enum)

enum Color {Red, Green, Blue}