Skip to content

Instantly share code, notes, and snippets.

@winwu
Last active July 25, 2016 16:05
Show Gist options
  • Save winwu/943aa031fd54766874762b1d95f0eb7b to your computer and use it in GitHub Desktop.
Save winwu/943aa031fd54766874762b1d95f0eb7b to your computer and use it in GitHub Desktop.
// 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