• 前端培训丁鹿学堂:ts入门完结篇


    **class类中的属性有很多修饰符,有不同的约束**。

    1.  public:可以在任意位置修改和访问(默认)
    1.  private: 私有属性。在class内部可以访问,实例和继承的之类都无法访问
    1.  protected 只能在class内部和子类中使用
    1.  通过get 和set 关键字设置读取写入的方法。 调用的时候直接调用get后面的名称而不是class私有的名称。

    ```
        class Person{
            private _name:string;
            private _age:number;
            constructor(name:string,age:number){
                this._name = name
                this._age = age
            }
            get name(){
                return this._name
            }
            set name(value:string){
                this._name = value
            }
        }
      let person = new Person('zhangsan',18)
     console.log(person.name)
    ```

    **泛型**:在定义类或者函数的时候,如果类型不确定,就可以使用泛型。泛型在这里相当于一个变量。语法是用尖括号包裹起来。在的调用的时候再明确赋值类型。

    ```
    // 函数的泛型
    function fn<S>(str:S):S{
        return str
    }
    // 调用的时候再指定具体的类型
    fn<string>('abc')
    // 泛型可以指定多个
    function fn2<A,B>(a:A,b:B):A{
        console.log(b)
        return a
    }
    fn2<string,number>('123',5)
    // 泛型和接口结合使用
    interface MyLength {
        length:number
    }
    function getLength<L extends MyLength>(a:L):number{
        return a.length
    }
    getLength([2,3,4])
    // 泛型在class中的使用
    class Person3 <T>{
        name:T;
        constructor(name:T){
            this.name = name
        }
    }
    let person3 = new Person3<string>('zhangsan')
    ```

    \
    到这里所有ts的基础知识都已经介绍完毕,以后可以在自己的项目中去运用,一定可以彻底掌握typescript,增加自己的面试亮点!

  • 相关阅读:
    耐克玩转Web3的秘诀都在这里了
    负载均衡式的在线OJ系统
    rapidocr-onnxruntime库及在open-webui上传PDF 图像处理 (使用 OCR)应用
    Flink 任务失败重启与恢复策略
    分布式系统的 38 个知识点
    hibernate映射文件中inverse、cascade、order-by属性
    配置oem 13c以监控数据库
    进制数转换
    详解c++---入门(上)
    Redis分布式锁入门
  • 原文地址:https://blog.csdn.net/qq_38525381/article/details/125459819