12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- // object 是js中的一个类型
- // 基本数据类型:number string undefined null boolean
- // 引用数据类型: Object(Array object function)
- let a:object;
- a = {};
- a = [];
- a = function() {};
- /**
- * 对象语法
- * {属性名:属性值,属性名?:属性值...}
- * 属性名后添加问号 相当于给当前属性设置可选开关
- */
- let b:{a:number,b?:string};
- b = {a:1,b:'1'};
- b = {a:5};
- /**
- * [propName:string]:any 可以添加任意属性的任意类型的数据
- */
- let c:{a:number,b?:string,[propName:string]:any};
- c = {a:10,b:'12',c:14,d:true};
- // let b = {a:1,b:1}
- /**
- * 函数语法:
- * (形参:类型,形参:类型....) => 类型
- */
- let d:(a:number,b:number) => number;
- d = function fn1(a:number,b:number):number {
- return a+b;
- };
- let e:(c:string,d:string) => string;
- e = function fn2(a:string,b:string):string {
- return a+b;
- }
- /**
- * 数组语法
- * 类型[];
- */
- let f = [];
- // 字符串类型数组
- let g:string[];
- g = ['1','1','1']
- let h:number[];
- h =[2,5,7,9]
- let i:Array<boolean>
- // i = [1];
- i = [false];
- /**
- * 元祖:固定长度的数组
- */
- let j:[number,boolean,string];
- j = [1,false,'22'];
- /**
- * 枚举
- * enum 对象名称 {
- * 定义的枚举值
- * }
- */
- enum Sex {
- man,
- woman
- }
- let k: {
- name:string,
- age:number,
- sex:Sex
- }
- k = {name:"孙悟空",age:20,sex: Sex.man};
- console.log(k.sex === Sex.man ? "男性" : "女性");
- // 类型别名
- type myType = 1|2|3|4;
- let l:myType;
- let m:myType;
- let n:myType;
- // 逻辑运算符 &
- let o: {name:string} & {age:number};
- o = {name:'孙悟空',age:20};
- export{}
|