|
@@ -0,0 +1,79 @@
|
|
|
|
|
+// Object(对象 数组 函数)
|
|
|
|
|
+let a1:object;
|
|
|
|
|
+a1 = {};
|
|
|
|
|
+a1 = [];
|
|
|
|
|
+a1 = function() {};
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 对象语法:
|
|
|
|
|
+ * {属性名:属性值,....}
|
|
|
|
|
+ * 属性名后面添加?,相当于给当前属性设置可选开关
|
|
|
|
|
+ * [propName:string]:any 可以添加任意属性 任意类型
|
|
|
|
|
+ */
|
|
|
|
|
+let b1:{a:number,b?:string,[propName:string]:any};
|
|
|
|
|
+b1 = {
|
|
|
|
|
+ a:12,
|
|
|
|
|
+ b:'2'
|
|
|
|
|
+}
|
|
|
|
|
+b1 = {
|
|
|
|
|
+ a:12,
|
|
|
|
|
+ c:12,
|
|
|
|
|
+ d:12
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 函数语法
|
|
|
|
|
+ * (形参:类型,形参:类型) => 类型
|
|
|
|
|
+ */
|
|
|
|
|
+let c1:(a:number,b:string) => string;
|
|
|
|
|
+c1 = function(a:number,b:string) {
|
|
|
|
|
+ return a+b;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+c1(2,'3');
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 数组语法
|
|
|
|
|
+ * 类型[]
|
|
|
|
|
+ * Array<类型>
|
|
|
|
|
+ */
|
|
|
|
|
+let d1:string[];
|
|
|
|
|
+d1 = ['1','2','21'];
|
|
|
|
|
+let d2:Array<number>;
|
|
|
|
|
+d2 = [1,2,3]
|
|
|
|
|
+
|
|
|
|
|
+// 元祖:固定长度的数组
|
|
|
|
|
+let f1:[number,string];
|
|
|
|
|
+f1 = [1,'2'];
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 枚举 enum
|
|
|
|
|
+ * enum 对象名称 { 定义的枚举值 }
|
|
|
|
|
+ */
|
|
|
|
|
+enum Sex {
|
|
|
|
|
+ man,woman
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+let g1:{
|
|
|
|
|
+ name:string,
|
|
|
|
|
+ age:number,
|
|
|
|
|
+ sex:Sex
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+g1 = {name:'孙悟空',age:12,sex:Sex.man};
|
|
|
|
|
+console.log(g1.sex === Sex.man ? '男' : '女')
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 类型别名 type
|
|
|
|
|
+ */
|
|
|
|
|
+
|
|
|
|
|
+type myType = number | string;
|
|
|
|
|
+let x:myType;
|
|
|
|
|
+let y:myType;
|
|
|
|
|
+let z:myType;
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 逻辑运算符
|
|
|
|
|
+ * | 或
|
|
|
|
|
+ * & 和
|
|
|
|
|
+ */
|