NeverGiveUpT 
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  • 友链
  •     
TS中的类型推论

TS中的类型推论

1.什么是类型推论 TypeScript里,在有些没有明确指出类型的地方,类型推论会帮助提供类型 let x = 3; 变量x的类型被推断为数字。 这种推断发生在初始化变量和成员,设置默认参数值和决定函数返回值时。 2.最佳通用类型 当需要从几个表达式中推断类型时候,会使用这些表达式的类型来推断出一个最合适的通用类型。 let x = [0, 1, null]; 为了推断x的类型,我们必须考虑所有元素的类型。这里有两种选择: number和null。计算通用类型算法会考虑所有的候选类型,并给出一个兼容所有候选类型的类型。 由于最终的通用类型取自候选类型,有些时候候选类型共享相同的通用类型,
 2020-05-07   技术    TS 
你一定要知道的护肤品牌

你一定要知道的护肤品牌

1.洗面奶 芙丽芳丝(freeplus)(¥150) 氨基酸洗面奶,以温和无刺激著称。也刚好适合油痘肌使用。主打就是温和、无添加、低刺激,敏感肌用会很好,温和舒适 很舒服 官网:https://www.freeplus.cn/freeplus/products/skincare05/ 2.爽肤水/护肤精华露 SK-ll神仙水 (¥1540) SK-II 护肤精华露(神仙水®)改变你的肌肤,令肌肤变得晶莹剔透,嫩滑、紧致、焕发动人光彩。35 年来始终如一。备受瞩目、畅销全球的 SK-II 护肤精华露(神仙水®)蕴含超过90%的天然生物成分PITERA™,集维生素、矿物质和氨基酸等多种微量营养
 2020-05-07   生活    护肤 
TS中的枚举

TS中的枚举

1.枚举 使用枚举我们可以定义一些带名字的常量。 使用枚举可以清晰地表达意图或创建一组有区别的用例。 TypeScript支持数字的和基于字符串的枚举。 2.数字枚举enum Direction { Up = 1, Down, Left, Right } 定义了一个数字枚举, Up使用初始化为 1。 其余的成员会从 1开始自动增长。 换句话说, Direction.Up的值为 1, Down为 2, Left为 3, Right为 4。 不使用初始化器Up的值为 0, Down的值为1 3.字符串枚举 字符串枚举的概念很简单,但是有细微的 运行时的差别。 在一
 2020-05-06   技术    TS 
TS中的装饰器

TS中的装饰器

1.什么是装饰器装饰器是一种特殊类型的声明,它能够被附加到类,方法,属性或参数上,可以修改类的行为。通俗的讲装饰器就是一个方法,可以注入到类,方法,属性参数上来拓展类,属性,方法,参数的功能。常见的装饰器: 类装饰器 属性装饰器 方法装饰器 参数装饰器 装饰器的写法: 普通装饰器(无法传参) 装饰器工厂(可传参) 2.类装饰器 类装饰器—-普通装饰器(无法传参) function logClass(params: any) { console.log(params) //当前类 //TODO ① 拓展-属性 params.
 2020-05-05   技术    TS 
TS中的泛型

TS中的泛型

1.泛型软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性。组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功能。通俗理解:泛型就是解决 类,接口,函数的复用性,以及对不特定的数据类型的支持。 2.泛型函数function getData<T>(str: T): T { return str; } let str = getData<string>('aaa'); console.log(str); let str2 = getData<number>(123)
 2020-05-04   技术    TS 
TS中的模块和命名空间

TS中的模块和命名空间

1.模块的概念我们可以把一些公共的功能单独抽离成一个文件作为模块。模块里面的变量,函数,类等默认是私有的,如果我们要在外部访问模块里面的(变量,函数,类),我们需要通过export 暴露出模块里面的(变量,函数,类)。暴露后我们通过 import 引入模块中的(变量,函数,类),这样就可以使用了。 // db.ts let dbUrl = 'xxxxx'; export function getData:any[]{ console.log('获取数据'); return [ { title:'12
 2020-05-03   技术    TS 
TS中的接口

TS中的接口

接口的作用:定义标准在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到了一种限制和规范的作用。接口定义了某一批类所需要遵循的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要。 1.属性接口 对json的约束 interface IObj { name: string; age?: number; } function getList(obj: IObj): void { console.log(obj.name); console
 2020-05-02   技术    TS 
TS中的类

TS中的类

1.class的创建class Person { name: string; age: number; constructor(name: string, age: number) { //构造方法 实例化类的时候触发的方法 this.name = name; this.age = age; } run(): void { console.log(this.name + '在跑步'); } getName(): string { return this.nam
 2020-05-01   技术    TS 
Git 使用方法

Git 使用方法

Git 使用方法常用git操作 + 新建分支并切换到新分支 git checkout -b [branch-name] + 删除本地分支 git branch -d [branch-name] + 删除远程分支 git push origin --delete [branch-name] + 重置暂存区与工作区,与上一次commit保持一致 git reset --hard + 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变 git reset [commit] 1、git工作空间 Worksp
 2020-04-30   技术    git 
JS 处理如何优雅的处理复杂判断

JS 处理如何优雅的处理复杂判断

1.基本if else 逻辑判断let sex = 1; let sexText = ''; if(sex === 1){ sexText = '男'; }else if(sex === 2){ sexText = '女'; }else { sexText = '其他'; } 2.switch/caseconst getStatusText = (status) => { let str = ''; switch (status) { case 1: str="
 2020-04-29   技术    JS 
123

搜索

Hexo Fluid