Last active
July 25, 2016 16:05
-
-
Save winwu/943aa031fd54766874762b1d95f0eb7b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// boolean 布林 | |
let isUserExists: boolean = false; | |
// Number 數值 | |
let myAge: number = 26; | |
// String 字串 | |
let jobTitle: string = 'Frontend Engineer'; | |
// String 也可以用 字串樣板 (Template Literals) ${ expr } | |
let API_STEM: string = 'http://api.xxx.xx?'; | |
let API_KEY: string = 'SK935232fwgw'; // 我亂打的 示意一下而已 | |
let API_URL = `${API_STEM}KEY=${API_KEY}`; | |
// Array 陣列 | |
// 如數字型別的陣列 | |
let luckyNumber: number[] = [12, 17, 27, 46, 33, 11]; | |
// 也可以用 泛型 來表示一個 Array Type | |
let list: Array<number> = [12, 17, 27, 46, 33, 11]; | |
// Tuple 元組,定義一個固定數量且已知型別的 array | |
// 定義一個 Tuple | |
let userNameAndAge: [string, number]; | |
// 正確的初始化 init 示範: | |
userNameAndAge = ["win wu", 520]; | |
/* 錯誤的初始化像是故意把數字跟字串相反: | |
* userNameAndAge = [520, "winwu"]; | |
* 會得到錯誤訊息 | |
* basic.ts(27,1): error TS2322: | |
* Type '[number, string]' is not assignable | |
* to type '[string, number]'. | |
*/ | |
// Enum 列舉 | |
enum Book { | |
PHP, | |
ROR, | |
Node}; | |
let p: Book = Book.PHP; | |
/* 預設情況下 Enum 第一個 index 是 0 | |
* 但你可以調整,若希望第一個從 1 開始: | |
*/ | |
enum Color1 {Pink, Yellow, Green }; | |
let colorName1: String = Color1[1]; | |
alert(colorName1); // print “Yellow” | |
enum Color2 {Pink = 1, Yellow, Green }; | |
let colorName2: String = Color2[1]; | |
alert(colorName2); // print “Pink” | |
// Any 任意型別 可以調用任意方法 | |
/* 有時候我們在開發的時候可能還無法決定該變數的型別 | |
* 或是這個資料的內容是動態的 | |
*/ | |
let notSureData: any = 4; | |
notSureData = false; | |
// Void 無資料 return 時或undefined | |
let unUseable: void = undefined; | |
function doNothing(): void { | |
return undefined; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment