1. 程式人生 > 其它 >typescript-原始資料型別

typescript-原始資料型別

JavaScript型別分為基本資料型別和引用資料型別

基本資料型別又分為Boolean,undefined,null,number,string,symbol,bigint

那麼在typescript中的基本型別是什麼?

布林值

布林值是最基礎的資料型別,在 TypeScript 中,使用 boolean 定義布林值型別:

let isDone:boolean = true
console.log(isDone)

注意,使用建構函式 Boolean 創造的物件不是布林值:

let createdByNewBoolean: boolean = new Boolean(1);

// Type 'Boolean' is not assignable to type 'boolean'.
//   'boolean' is a primitive, but 'Boolean' is a wrapper object. Prefer using 'boolean' when possible.

事實上 new Boolean() 返回的是一個 Boolean 物件:

直接呼叫Boolean也可以返回一個Boolean型別的值

let createByBoolean:boolean = Boolean(1)
console.log(createByBoolean)

數值

// 數值
let decLiteral:number = 6
let hexLiteral:number = 0xf00d
let binaryLiteral:number = 0b1010
let octalLiteral:number = 0o744
let notANumber:number = NaN
let infinityNumber:number = Infinity

字串

// 字串
let myName:string = 'Tom'
let myAge:number = 24
let sentence:string = `hello,my name is ${myName},I well be ${myAge + 1} years old next month`

空值 void

JavaScript沒有空值(void)的概念,但是在typeScript中可以用void來標識沒有任何返回值的函式

// 空值
function alertName () :void {
  alert('my name is Tom')
}

宣告一個 void 型別的變數沒有什麼用,因為你只能將它賦值為 undefined 和 null

Null 和 undefined

let u:undefined = undefined
let n:null = null
let number_1:number = undefined
let string_1:string = undefined
let boolean_1:boolean = undefined
let number_2:number = null
let string_2: string = null
let boolean_2:boolean = null

與void區別是,undefined和null是所有型別的子型別