这是我参加第五届青训营笔记创作活动的第四天
TypeScript
TS静态类型 弱类型语言
js动态类型 弱类型语言
静态类型 执行阶段不是进行类型匹配 java 提前进行类型匹配只能先编译后执行
动态类型 执行阶段才会进行确定类型匹配
区分:编译在执行前还是执行时
弱类型 会进行隐式类型转换
强类型 不会进行隐式类型转换
基本语法
变量 变量名: 类型名称 = 值;
const q: string="string";
const w: number=1;
const e: boolean=true;
const t:undefined = undefined;
const Bytedancer(对象):IBytedancer(类型)={
jobId:9303245,
name:'lin',
}
interface IDtedancer{
readonly(只读属性) jobId:number;
sex:'man'|'woman'|'other';
hobby?:string;(可选,可在可不在)
[key:string]:any;
}
只读属性:约束属性不可在对象初始化外赋值
可选属性:定义该属性可以不存在
任意属性:约束所有对象属性都必须是该属性子类型
函数类型声明
1:直接在函数类型上进行补充 2:给函数变量赋值一个函数声明
function add(x,y){
return x+y;
}
法一
function add(x:number,y:number):number(返回值类型){
return x+y;
}
const mult:(x:number,y:number)=>number(返回值类型)=(x,y)=>x*y;
法二
interface IMult{
(x:number,y:number):number;
}
const mult: IMult=(x,y)=>x*y;
函数重载