|
@@ -0,0 +1,108 @@
|
|
|
|
+// object 是js中的引用数据类型
|
|
|
|
+// 基本数据类型:number string boolean undefined null
|
|
|
|
+// 引用数据类型:object(数组、对象、函数)
|
|
|
|
+let a: object;
|
|
|
|
+a = [];
|
|
|
|
+a = {};
|
|
|
|
+a = function () {};
|
|
|
|
+// a = 12;
|
|
|
|
+/**
|
|
|
|
+ * 对象语法:
|
|
|
|
+ * {
|
|
|
|
+ * 属性名:属性值,
|
|
|
|
+ * 属性名: 属性值
|
|
|
|
+ * 。。。
|
|
|
|
+ * 在属性名后添加问号 相当于给当前属性设置可选开关
|
|
|
|
+ * }
|
|
|
|
+ */
|
|
|
|
+let b: {
|
|
|
|
+ a: number;
|
|
|
|
+ c: string;
|
|
|
|
+ d?: boolean;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+b = {
|
|
|
|
+ a: 10,
|
|
|
|
+ c: "hello",
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+b = {
|
|
|
|
+ a: 90,
|
|
|
|
+ c: "你好",
|
|
|
|
+ d: true
|
|
|
|
+};
|
|
|
|
+/**
|
|
|
|
+ * [propName:string]:any 可以添加任意属性的任意类型的数据
|
|
|
|
+ */
|
|
|
|
+let c:{
|
|
|
|
+ a:number,
|
|
|
|
+ b?:string,
|
|
|
|
+ [propName:string]:any
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+c = {
|
|
|
|
+ a: 12,
|
|
|
|
+ hi: '哇',
|
|
|
|
+ wo: 0
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+let d: (a:number,b:number) => number;
|
|
|
|
+
|
|
|
|
+// d = () => {
|
|
|
|
+// return 'qq'
|
|
|
|
+// // console.log("你好")
|
|
|
|
+// }
|
|
|
|
+d = function fn1(a:number,b:number) {
|
|
|
|
+ return a + b;
|
|
|
|
+}
|
|
|
|
+// fn1(89,0)
|
|
|
|
+// let obj = {
|
|
|
|
+// name:'1',
|
|
|
|
+// age:10
|
|
|
|
+// }
|
|
|
|
+/**
|
|
|
|
+ * 数组:
|
|
|
|
+ * let xxx:type[]
|
|
|
|
+ * let xxx = Array<type>
|
|
|
|
+ */
|
|
|
|
+let e:string[];
|
|
|
|
+let f:number[];
|
|
|
|
+// e = ['1','2','3'];
|
|
|
|
+// f = [1,'2',true];
|
|
|
|
+// let g:boolean[];
|
|
|
|
+let g =Array<boolean>;
|
|
|
|
+
|
|
|
|
+// 元祖:固定长度的数组
|
|
|
|
+let h:[number,boolean,boolean];
|
|
|
|
+
|
|
|
|
+h = [1,true,true];
|
|
|
|
+// h = ['dh',1,2]
|
|
|
|
+
|
|
|
|
+// 枚举
|
|
|
|
+enum Sex {
|
|
|
|
+ man,
|
|
|
|
+ woman
|
|
|
|
+}
|
|
|
|
+let k: {
|
|
|
|
+ name: string,
|
|
|
|
+ age: number,
|
|
|
|
+ sex: Sex
|
|
|
|
+}
|
|
|
|
+k = {
|
|
|
|
+ name:"孙悟空",
|
|
|
|
+ age: 10,
|
|
|
|
+ sex: Sex.man
|
|
|
|
+}
|
|
|
|
+// 条件 ? "真" : "假"
|
|
|
|
+console.log(k.sex === Sex.woman ? '男' : '女')
|
|
|
|
+
|
|
|
|
+// 类型别名
|
|
|
|
+type myType = 1|2|3|4;
|
|
|
|
+
|
|
|
|
+let l:myType = 1;
|
|
|
|
+let y:myType = 4;
|
|
|
|
+
|
|
|
|
+// 逻辑运算符 &
|
|
|
|
+let o:{name:string} & {age:number}
|
|
|
|
+o ={name:"孙悟空",age:20}
|
|
|
|
+export {};
|