Typescript 基本使用汇总

// 定义基本数据类型
let str: string = 'title';
let num: number = 20;
let bool: boolean = true;
let obj: null = null;
let undef: undefined = undefined;

// 定义联合类型
let l: number | string;
l = 100;
l = 'title';

// 定义任意类型
let any_temp: any;
any_temp = [];
any_temp = '任意类型';

// 数组类型
let arr1: number[] = [1, 2, 3, 4];
let arr2: string[] = ['a', 'b', 'c', 'd'];
let arr3: any[] = [1, 'a', null];

// 数组泛型
let arr4: Array<number> = [1, 2, 3, 4];
let arr5: Array<string> = ['a', 'b', 'c', 'd'];
let arr6: Array<number | string> = [1, 'a', 'xxx'];

// 定义对象类型
// 定义对象类型之前需要定义好对应的接口
interface Person {
    name: string,
    date: string,
    sex: string,
    age?: number, // 可选属性
    [propName: string]: any //任意属性
}
let person: Person = {
    name: 'lk',
    date: '2012-12-12',
    sex: '男',
    age: 12,
    action: (): void => {
        console.log('你好!');
    }
}
person.height = '168cm';
person.weight = '52kg';

// 定义函数:输入类型,输出类型
function s1(x: number, y: number): number {
    return x + y;
}
s1(1, 2);
function s2(x: number, y?: number): number {
    // y为可选参数
    if (y) {
        return x + y;
    } else {
        retun x; 
    }
}
s2(1);
s2(2,3);

// 泛型的使用
// 泛型的概率:在定义函数、类、接口时不指定类型,在使用的时候才指定类型的一种特性;
function s3<T>(x: T, y: T): T{
    return x + y;
}
s3<number>(1, 3);

全部评论

相关推荐

Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
叶扰云倾:进度更新,现在阿里云面完3面了,感觉3面答得还行,基本都答上了,自己熟悉的地方也说的比较细致,但感觉面试官有点心不在焉不知道是不是不想要我了,求阿里收留,我直接秒到岗当阿里孝子,学校那边的房子都退租了,下学期都不回学校,全职猛猛实习半年。这种条件还不诱人吗难道 然后现在约到了字节的一面和淘天的复活赛,外加猿辅导。华为笔试完没动静。 美团那边之前投了个base广州的,把我流程卡麻了,应该是不怎么招人,我直接简历挂了,现在进了一个正常的后端流程,还在筛选,不知道还有没有hc。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务