HZH-PC\HZH vor 3 Jahren
Ursprung
Commit
77f87eadbc
8 geänderte Dateien mit 80 neuen und 18 gelöschten Zeilen
  1. 0 2
      01.ts
  2. 0 16
      02.ts
  3. 0 0
      part1/01.js
  4. 12 0
      part1/01.ts
  5. 58 0
      part1/02.ts
  6. 1 0
      part2/src/app.js
  7. 1 0
      part2/src/app.ts
  8. 8 0
      part2/tsconfig.json

+ 0 - 2
01.ts

@@ -1,2 +0,0 @@
-let a: number;
-a = 4;

+ 0 - 16
02.ts

@@ -1,16 +0,0 @@
-let d;
-d = 10;
-d = "333";
-d = true;
-
-let s: string;
-s = d; //any值可以赋给其他不同类型
-
-let e: unknown;
-// s = e; unknown不能赋值其他
-
-if(typeof e === "string"){
-    s = e;  //方法1.先判断
-}
-s = e as string //方法2.类型断言
-s = <string>e //另外写法

+ 0 - 0
01.js → part1/01.js


+ 12 - 0
part1/01.ts

@@ -0,0 +1,12 @@
+let a: number;
+a = 4;
+
+// &表示同时
+let j: {name: string} & {age: number};
+j = {name: 'ddd',age: 33};
+
+// 类型别名
+let k: 1 | 2 | 3;
+
+type myType = 1 | 2 | 3;
+let m: myType;

+ 58 - 0
part1/02.ts

@@ -0,0 +1,58 @@
+// 类型 
+// number string boolean 字面量 any void
+// unknown never object array tuple enum
+
+// 隐式类型any
+let d;
+d = 10;
+d = "333";
+d = true;
+
+// 隐式any类型缺点,any值可以赋给其他不同类型
+let s: string;
+s = d; 
+
+let e: unknown;
+// s = e; unknown不能赋值其他
+
+// unknown赋给其他值方法
+// 方法1.先判断
+if(typeof e === "string"){
+    s = e;
+}
+// 方法2.类型断言
+s = e as string;
+// 另外写法
+s = <string>e;
+
+function fn(): void{}
+
+function fn1(): never{
+    throw new Error('ddd');
+}
+
+// 指定属性,有问号的可以不对应
+let obj1: {name: string, age?: number};
+obj1 = {name: 'sss'}
+
+// 任意属性
+let obj2: {name: string, [propName: string]: any};
+obj2 = {name: 'sss', xxx:'sssss', xxxx: 23}
+
+let fff: (a: number, b: number)=> number;
+fff = function(n1: number ,n2: number):number{
+    return n1 + n2
+}
+
+// 数组
+let arr: string[];
+let arr2: Array<number>
+
+// 元组,固定长度数组
+let h: [string, string];
+h = ['ss','ff']
+
+// 枚举
+enum Gender{Male,Female}
+let i: {name: string, gender: Gender};
+i = {name:'dd', gender: Gender.Female};

+ 1 - 0
part2/src/app.js

@@ -0,0 +1 @@
+var a;

+ 1 - 0
part2/src/app.ts

@@ -0,0 +1 @@
+let a: number;

+ 8 - 0
part2/tsconfig.json

@@ -0,0 +1,8 @@
+{
+    "include": [
+        ".src/**/*"
+    ],
+    "exclude": [
+        
+    ]
+}