首页 > 其他分享 >typeScript学习-类、静态数据、静态属性应用

typeScript学习-类、静态数据、静态属性应用

时间:2023-08-17 12:00:09浏览次数:41  
标签:静态数据 typeScript console log 静态 name static 属性

typeScript学习

类、静态数据、静态属性应用

类:

定义:类就是拥有相同属性和方法的一系列对象的集合。

展开理解:类是一个模具,是从这该类包含的所有具体对象中抽象出来的一个概念,类定义了它包含的全体对象的静态特征和动态特征。

举例:

people 类

静态特征【属性】name、age、address、phone

动态特征【方法】doEat、doStep

desk 类

静态特征【属性】height、width、color、price、brandno、material

动态特征【方法】load

order 订单类

静态属性【属性】orderid、ordertime、custname

动态特征【方法】createOrder、modifyOrder、delOrder、chargeBack

静态成员

静态成员-静态属性

class People {
    name: string;
    age: number;
    addr: string;
    static count: number = 0; // 静态成员-静态属性
    constructor(_name: string, _age: number, _addr: string) {
        this.name = _name;
        this.age = _age;
        this.addr = _addr;
        People.count++
    }
    doEat() {}
    doStep() {}
}

let p1 = new People('zhangsan', 23, 'xxx小区')
let p2 = new People('wangwu', 25, 'xxx小区2')
let p3 = new People('wangwu', 25, 'xxx小区3')
p1.doEat()
p2.doStep()
console.log(p1.name) // zhangsan
console.log(p2.age) // 25
console.log(People.count) // 3 

export { }

静态成员-静态方法

// 当一个类里的方法,在外部调用时,只需要一个对象就可以搞定,不需要创建多个对象,可以使用静态方法
class DateUtil {
    static formatDate() { } // 格式化日期
    static diffDateByDay() { } // 两个日期之间的天数计算
    static diffDateByHour() { } // 两个日期之前的小时计算
    static timeConversion(restTime: number) { } // 天 时 分 秒
}

// 静态方法
DateUtil.formatDate()

export { }

单件(例)模型中两种实现

1、立即创建单件模式(饿汉式)

class DateUtil {
    static dateUtil = new DateUtil() // 立即创建单件模式(饿汉式)
    private constructor() {
        console.log("创建对象...")
    }
    formatDate() {
        console.log("formatDate")
    } // 格式化日期
    diffDateByDay() { } // 两个日期之间的天数计算
    diffDateByHour() { } // 两个日期之前的小时计算
    timeConversion(restTime: number) { } // 天 时 分 秒
}
console.log("abc")
const dateUtil1 = DateUtil.dateUtil
const dateUtil2 = DateUtil.dateUtil

console.log(dateUtil1 === dateUtil2) // true
dateUtil1.formatDate() // formatDate

export { }

 

标签:静态数据,typeScript,console,log,静态,name,static,属性
From: https://www.cnblogs.com/kongbaige/p/17637026.html

相关文章

  • typeScript学习-TS类型-其他特殊类型-可变元组
    typeScript学习可变元组:letpeople:[string,number,string,string,string]=["wangwu",23,"地址",'13312341234','备注']//当前三个数据固定格式,后面数据不确认格式时用可变元组//可变元组//letcustomers:[string,number,string,...any[]]=[&qu......
  • typeScript学习-TS类型-其他特殊类型-元组(tuple)
    typeScript学习元组(tuple):满足以下3点的数组就是元组(1)在定义时每个元素的类型都是确定(2)元素值的数据类型必须是当前元素定义的类型(3)元素值的个数必须和定义时个数相同 letsalary:[string,number,number,number,number]=["zhangsan",5000,5000,5000,5000] ......
  • ubuntu 修改网络 静态IP
    network:version:2renderer:networkdethernets:##可以ipa查看以太网连接名称eth0:dhcp4:nodhcp6:no##addresses添加网络掩码,如192.168.56.3/24addresses:-192.168.38.105/24routes:-to:defaul......
  • [React Typescript] Well typed a React Context provider
    importReactfrom"react";import{Equal,Expect}from"../helpers/type-utils";constcreateRequiredContext=<Textendsany>()=>{constcontext=React.createContext<T|null>(null);constuseContext=<Te......
  • [React Typescript] Fixing type inference in a Custom React Hook
    //Problemimport{useState}from"react";import{Equal,Expect}from"../helpers/type-utils";exportconstuseId=(defaultId:string)=>{const[id,setId]=useState(defaultId);return[id,setId];};const[id,setI......
  • typeScript学习-interface和type 区别
    typeScript学习interface(接口)和type区别type和接口类似,都用来定义类型,但type和interface区别如下:区别1:定义类型范围不同interface只能定义对象类型或接口当名字的函数类型。type可以定义任何类型,包括基础类型、联合类型、交叉类型,元组。//type定义基础类型typ......
  • spring-boot静态资源目录配置
    spring-boot静态资源目录配置spring-boot静态资源默认为/src/main/resources下的/static目录,可以通过application.properties的server.servlet.context-path属性配置如:server.servlet.context-path=/public......
  • 静态缓存(static Buffer)和动态缓存(dynamic Buffer)
    创建缓存时,如果未使用D3DUSAGE_DYNAMIC,则所创建的缓存为静态缓存(staticBuffer),我们用静态缓存来存储静态数据(那些不需要经常修改或访问的数据),例如,地图和城市建筑的数据,如果使用的动态缓存,动态缓存一般放置在AGP存储区中,其内容可以迅速的更新,动态缓存的一个最大的优点是更新的速度......
  • 免费获得静态IP资源实操方法
    今日与大家分享不同的获取固定IP资源的方法,我会用简单的方式解释清楚,让你可以轻松上手,享受更好的网络服务。首先,我们先来了解一下什么是静态IP。简单说,静态IP就是不会变的IP地址,和动态IP相对应。动态IP是由你的网络服务提供商动态分配的,每次重新连接网络时都会获得一个新的IP地址。......
  • 静态路由
    1.路由是什么?从源主机到目标主机的转发过程2.路由的工作原理是什么?可以说路由器就是互联网的中转站,网络中的数据包就是通过一个一个的路由器转发到目的网络的。那么路由器是如何进行数据包的转发的呢?就像一个人如果要去某个地方,他的脑海里一定要有一张地图一样,在每个路由器的内部......