首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
es
订阅
SuSuSu
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
接近天花板的TS类型体操,看懂你就能玩转TS了
「TS类型体操」作为一名花里胡哨的前端,看到最近这不是冬奥会开始了,咱们得为运动健儿们呐喊助威,还想着能不能当一次前端届的体操运动员,和奥运健儿们一起感受在冬天运动的魅力, 下面,我们就开始做操吧!
我读 Typescript 源码的秘诀都在这里了
先从一个 ts 的语法开始: Test<T> 这个高级类型,有一个泛型参数 T,当 T 传入的类型为联合类型的时候,有两种情况: 如果 checkType(extends 左边的类型) 是 T,则把联
玩转TS类型体操
TS 因其强大的类型系统在前端领域可谓是大战拳脚。并且 TS 的类型系统是图灵完备的,这意味着它是可以用来进行逻辑运算,也就是我们戏称的类型体操😂。因此,我们通常可以在一些库中看到极其复杂的类型定义。
模式匹配-让你 ts 类型体操水平暴增的套路
Typescript 支持泛型,也叫类型参数,可以对类型参数做一系列运算之后返回新的类型,这就是类型编程。 因为类型编程实现一些逻辑还是有难度的,所以被戏称为类型体操。 社区有用 Typescript
白话typescript中的【extends】和【infer】
我们再来看看infer。 在extends语句中,还支持infer关键字,可以推断一个类型变量,高效的对类型进行模式匹配。但是,这个类型变量只能在true的分支中使用。 不知道初学ts的朋友们看完这个介绍是不是一脸懵逼,反正之前我是... 建议自己捋一遍。 ts提供的exten…
TypeScript 高级用法
unknown 指的是不可预先定义的类型,在很多场景下,它可以替代 any 的功能同时保留静态检查的能力。 这个时候 unknown 的作用就跟 any 高度类似了,你可以把它转化成任何类型,不同的地方是,在静态编译的时候,unknown 不能调用任何方法,而 any 可以。 …
TypeScript 强大的类型别名
TS 有个非常好用的功能就是类型别名。 类型别名会给一个类型起个新名字。类型别名有时和接口很像,但是可以作用于原始值,联合类型,元组以及其它任何你需要手写的类型。 上面的类型意思是,若 T 能够赋值给 U,那么类型是 X,否则为 Y。 原理是令 T' 和 U' 分别为 T 和 …
深拷贝
在不使用第三方库的情况下,我们想要深拷贝一个对象,用的最多的就是下面这个方法。 这种写法非常简单,而且可以应对大部分的应用场景,但是它还是有很大缺陷的,比如拷贝其他引用类型、拷贝函数、循环引用等情况。 显然,面试时你只说出这样的方法是一定不会合格的。 接下来,我们一起来手动实现…
最简实现Promise,支持异步链式调用(20行)
在面试的时候,经常会有面试官让你实现一个 Promise,如果参照 A+规范来实现的话,可能面到天黑都结束不了。 说到 Promise,我们首先想到的最核心的功能就是异步链式调用,本篇文章就带你用 20 行代码实现一个可以异步链式调用的 Promise。 这个 Promise …
JS正则表达式完整教程(略长)
亲爱的读者朋友,如果你点开了这篇文章,说明你对正则很感兴趣。 想必你也了解正则的重要性,在我看来正则表达式是衡量程序员水平的一个侧面标准。 关于正则表达式的教程,网上也有很多,相信你也看了一些。 与之不同的是,本文的目的是希望所有认真读完的童鞋们,都有实质性的提高。 本文内容共…