typescript - 2.數據類型

typescript中爲了使編寫的代碼更規範,更有利於維護,增長了類型校驗,在typescript中主要給咱們提供瞭如下數據類型typescript

布爾類型(boolean)
數字類型(number)
字符串類型(string)
數組類型(array)
元組類型(tuple)
枚舉類型(enum)
任意類型(any)
null 和 undefined
void類型
never類型數組

(1)布爾類型(boolean)

var flag=true;
flag=456;  //es5的寫法 (正確寫法)  ts中(錯誤寫法)

var flag:boolean=true;

// flag=123;  //錯誤

flag=false;  //正確

console.log(flag);

(2)數字類型(number)

var num:number=123;

        num=456;

        console.log(num);  /正確/


        num='str';    //錯誤

(3)字符串類型(string)

var str:string='this is ts';

        str='haha';  //正確


        str=true;  //錯誤

(4)數組類型(array)

// 數組類型(array)  ts中定義數組有兩種方式

  // var arr=['1','2'];  //es5定義數組


    // 1.第一種定義數組的方式

        var arr:number[]=[11,22,33];

        console.log(arr);    

    //2.第二種定義數組的方式

        var arr:Array<number>=[11,22,33];

        console.log(arr)

(5)元組類型(tuple)

自定義每一個數組類型this

// 元組類型(tuple)  屬於數組的一種

     let arr:[number,string]=[123,'this is ts'];

    console.log(arr);

(6)枚舉類型(enum)

enum 枚舉名{ 
                標識符[=整型常數], 
                標識符[=整型常數], 
                ... 
                標識符[=整型常數], 
            } ;

示例:es5

enum Flag {success=1,error=2};


let s:Flag=Flag.success;

console.log(s);

enum Color {blue,red,'orange'};

var c:Color=Color.red;

console.log(c);   //1  若是標識符沒有賦值 它的值就是下標

enum Color {blue,red=3,'orange'};

var c:Color=Color.red;

console.log(c);   //3

var c:Color=Color.orange;
console.log(c);   //4

(7)任意類型(any)

// var num:any=123;

    // num='str';

    // num=true;

    // console.log(num)



    //任意類型的用處


    var oBox:any=document.getElementById('box');


    oBox.style.color='red';

(8)null 和 undefined

null 和 undefined 其餘(never類型)數據類型的子類型code

var num:number;

 console.log(num)  //輸出:undefined   報錯

 //定義沒有賦值就是undefined
 var num1:number | undefined;

 console.log(num1);
 
 //一個元素多是 number類型 多是null 多是undefined

var num2:number | null | undefined;


num2=1234;
console.log(num2)l

(9) void類型

typescript中的void表示沒有任何類型,通常用於定義方法的時候方法沒有返回值。ip

function run():void{
    console.log('run')
}

run();
            

//錯誤寫法
/*
    function run():undefined{

        console.log('run')
    }

    run();
*/

(10)never類型

never類型:是其餘類型 (包括 null 和 undefined)的子類型,表明從不會出現的值。
這意味着聲明never的變量只能被never類型所賦值。字符串

/*
   
    var a:undefined;

    a=undefined;



    var b:null;

    b=null;


   */



   var a:never;

//    a=123; //錯誤的寫法
    a=(()=>{

        throw new Error('錯誤');
    })()
相關文章
相關標籤/搜索