ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

typeScript 基础点

2022-08-08 16:01:31  阅读:534  来源: 互联网

标签:typeScript string 子类 基础 number 接口 boolean let


// ts 数据类型

// 1. 基本数据类型: string, number, boolean, undefined, null
let s:string = 'aaaa'

// 2. 数组: number[]   泛型写法:Array<number>
let arr:number[] = [1,2,3]
let arr1:Array<string> = ['1', '2', '3']

//3. 元组:[string, number, boolean] 定义和复制一一对应
let temp:[string, number, boolean] = ['a', 12, true]

//4. 枚举 enum Color{red, green, blue}
console.log(Color[1]) // green
console.log(Color['green']) // 1

//5. any
//6. void
//7. object

//8. 联合类型  string|number  可以是数字或者number

//9.1 接口 interface 属性和值的约束
interface Iperson {
    readonly id: number, // readonly 只读
    age?: number,        // 可选
    name: string
}

const person = {
    id: 1,
    age: 20,
    name: '法外狂徒'
}

//9.2 接口实现函数调用签名
interface ISearch {
    (source:string, substr: string):boolean
}

var searching:ISearch = (source:string, substr: string):boolean => {
    return source.search(substr)
}

//9.3 接口实现类的约束,类通过implements实现多个接口逗号隔开, 接口可以通过 extends 继承其他接口
interface ISwim {
  swim():void
}
class Person implements ISwim {
    swim() {
        console.log('swiming................')
    }
}


//10 修饰符
// 1. public     可访问:子类+实例
// 2. private    可访问:自己
// 3. protected  可访问:子类
// 4. readonly   可访问:修饰的属性,只能在构造函数中初始化,自己的方法和外部实例以及子类都不能修改

//11 存取器 get set

//12 静态成员 static  只能类名.属性访问
//13 抽象类,抽象方法  abstract 修饰, 子类实现父类 且实现其父类的抽象方法
//14 函数的默认参数(有默认值),可选参数(后面加 ?),剩余参数(最后一个参数, ...args: [])
//15 泛型 <T>:定义的时候不知道类型,使用时才能确定类型。
// 1. 泛型函数 getNum<K, V>(v1: K, v2:V): [K, V] {return [v1, v2]}
// 2. 泛型接口

 

标签:typeScript,string,子类,基础,number,接口,boolean,let
来源: https://www.cnblogs.com/monkey-K/p/16562208.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有