---
# System prepended metadata

title: TypeScript 陣列、物件寫法
tags: [TypeScript]

---

###### tags: `TypeScript`
# TypeScript 陣列、物件寫法
## TypeScript 陣列寫法

* 陣列宣告方式(下面兩種寫法都是一樣的效果)
```
const tmp1: string[] = []; //宣告陣列內容都是字串
const tmp2: Array<string> = [];//宣告陣列內容都是字串
```
* 如果希望陣列裡面有各種不一樣的型別
```
const tmp3: (string || boolean)[] = [];//只接受string與boolena的陣列
```
* tuple元祖
```
const tu1: [number,string,boolean] = [11,"aa",false];//指定陣列裡面有什麼型別以及對應的位置    
* tulple二維陣列
const tu2:[number,number][] = [[123,456],[123,567]]//這邊限制二維陣列裡面的內容只能放數字
```  
## TypeScript 物件寫法
    
首先定義型別，再去撰寫物件內容
```
let peopleObj = {
    name:string,
    age:number
};
peopleObj = {
    name:"leo",
    age:12
}
    
```
如果物件屬性有"?"代表此欄位可選的，在撰寫時如果資料沒有這個欄位可以不寫(在此範例就是age代表能接受undefined或是number屬性)，例如下列範例    
```
let peopleObj = {
    name:string,
    age?:number
};
peopleObj = {
    name:"leo"
}
    
```        