TS快速回顾

// 定义变量
let a:string
// 定义变量并赋值(ts有类型推断机制)
let b = "asd"
let c:string = "asd"

// 定义数组
let arr1:number[] = [1,2,3,4]
// 定义对象
let per:{age: number,name: string} = {age : 11, name : "ASD "}
let per1= {age : 11, name : "ASD "}
//函数
// 函数没有return语句,要么不写返回值类型,要么写void,但是不能写number等
function add1(a: number,b: number): void{
    console.log(a+b)
}
函数赋默认值
function getInfo(name:string,age:number,sex: string ="未知"): void{
 
    console.log("名字为:"+name,"年龄:"+age,"性别:"+sex)
}
getInfo("张", 11)
输出:【"名字为:张", "年龄:11", "性别:未知"】
匿名函数
let add2 = (a: number,b: number) =>{
     console.log(a+b)
}
// 如果写在类里面就不用写function,直接add1(a: number,b: number): number{}
类,static静态
// // 静态成员隶属于类本身,而不属于某个对象实例,所以你不需要去创键一个类再使用,直接通过类调用。静态成员通用用于定义一些常量,或方法
class A{
    static num:number = 1
    static add(a:number,b:number){
        console.log(a+b)
    }
}
console.log(A.num)
A.add(1,2)

类,构造器
// 构造器:在创键对象时会被自动调用,以完成对象的属性进行初始化。所以创键对象传的是构造器参数:new Person(构造器参数)
class Person {
    mingzi: string;
    id:number;
    address: string ;
    constructor(mingzi:string, id:number,address: string= "Chain"){
        this.mingzi = mingzi
        this.id = id
        this.address = address
    }
    getint(){
        console.log("方法")
    }
}
// new 类名(构造器参数)
let p = new Person("zhang",11)
console.log(p.address)
输出:【"Chain"】
继承
// student继承Person,他是继承了所有属性和方法,所以你要在子类构造器对父类所有属性初始化,记得用super传下父类属性值就行
// 在子类中,不管是父类的属性还是方法都可以通过this调用


接口

// // 接口定义的变量不能赋值,方法不能有方法体

 

 
 
 
 
 
 
 
 
posted @ 2024-03-08 12:12  登峰至极  阅读(4)  评论(0编辑  收藏  举报