TypeScript语法学习

一、基本数据类型

let b: boolean;
b = true;
//b = 3 //报错
console.log(b);

let num: number;
num = 10;
//num = false; //报错
console.log(num);

let st: string;
st = '555'
st = "yyy"
console.log(st);

二、数组

//数组
let arr: number[] = [1, 2, 3, 4]
let arr2: string[] = ['1', 'o', '5']

let arr3: Array<number> = [1, 2, 3, 4]

//元组
let arr4: [string, boolean, number, boolean] = ['1', true, 8, false]

三、对象接口

interface IUser {
    name: String,
    age: number
}

//1、对象接口实现
let user: IUser = { name: '张三', age: 89 }
console.log(user);

//2、接口继承,只读属性
interface IStudent extends IUser {
    readonly DNA: boolean //只读属性
    CET4: boolean;
    CET6?: boolean
}
let student: IStudent = { name: '张三', age: 30, CET4: false,DNA:false }
//student.DNA = true 不可以修改
console.log(student);

四、函数接口

interface IFunc {
    (name: string): void
}
//一般使用
let f: IFunc = (name: string): void => {
    console.log(name);

}
f('张三')

//索引类型,键值对类型
interface IIndex {
    [index: string]: string
}

let index: IIndex = { a: '1', b: '1' }
console.log(index);

五、类接口

interface IUser2 {
    name: string
    say(age: number):void
}

class Student implements IUser2 {
    name: string;
    say(age: number):void {
        console.log(age);
    }
}

六、类

interface IMan {
    name: string
}

//普通类
class Man {
    say(): string {
        return "我是abstract"
    }
}

class Father extends Man implements IMan {
    name: string;
}

//抽象类
abstract class Man2 {
    say(): string {
        return "我是abstract"
    }
}

class Father2 extends Man implements IMan {
    name: string;
} 

七、函数

//1、具名函数
function say(content: string) {
    console.log(content);
}
//2、匿名函数
let speak1 = (content: string) => {
    console.log(content);
}

let speak2 = function (content: string) {
    console.log(content);
}

//可选参数
function say2(content?: string) {
    console.log(content);
}

say2("55555555")
say2()

//默认参数
function say3(content: string = '777777') {
    console.log(content);
}
say3()

八、泛型

//泛型参数
function say4<T>(speak: T) {
    console.log(speak);

}
say4<number>(1) //1
say4<string>("说话")  //说话

//泛型接口
interface IUser5 {
    name: String
}
say4<IUser5>({ name: "张三" }) //{ name: '张三' }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值