type-challenges [medium]
type-challenges
每天花几分钟练练ts...
7、Last of Array
实现一个通用Last<T>
,它接受一个数组T
并返回其最后一个元素的类型。
例如
type arr1 = ['a', 'b', 'c']
type arr2 = [3, 2, 1]type tail1 = Last<arr1> // expected to be 'c'
type tail2 = Last<arr2> // expected to be 1
实现
type arr1 = ["a", "b", "c"];// infer 关键字声明了一个新的类型变量B
type Last<T extends any[]> = T extends [...infer A, infer B] ? B : never;// 或者
type Last<T extends any[]> = T extends [...any, infer L] ? L : never;// 或者
type Last<T extends any[]> = [any, ...T][T["length"]];type Res = Last<arr1>;
// 相当于 type Res = "c";
8、出堆
实现一个通用Pop<T>,接受一个数组T并返回一个没有最后一个元素的数组。
type arr1 = ["a", "b", "c"];type Pop<T extends any[]> = T extends [...infer U, any] ? U : nevertype Res = Pop<arr1>;// 相当于type Res = ["a", "b"]
type-challenges [medium]相关推荐
- Tasteless challenges medium WP
http://chall.tasteless.eu/ 国外的一个靶场,都是单点知识,medium大部分还是比较简单 medium Level 1- Infiltration http://chall. ...
- oracle virtualbox 添加共享硬盘
创建共享磁盘 oracle virtualbox创建共享磁盘: 1.进入oracle VM的安装路径,执行如下命令: VBoxManage createhd --filename "E:\0 ...
- 无头虚拟化服务器,VBoxHeadless - 使用VirtualBox 4.0在无头Ubuntu 10.10服务器上运行虚拟机...
VBoxHeadless - 使用VirtualBox 4.0在无头Ubuntu 10.10服务器上运行虚拟机 本指南介绍如何在无头Ubuntu 10.10服务器上运行VirtualBox 4.0的虚 ...
- java中Date与String的相互转化
1:方法 [html]view plain copy 这种转换要用到java.text.SimpleDateFormat类 字符串转换成日期类型: 方法1: 也是最简单的方法 Date date=ne ...
- VirtualBox通过命令方式批量创建并配置虚拟机
通过批处理在引用VirtualBox命令批量创建虚拟机 需求:自动化创建一批虚拟机. 解决方法:本文通过VirtualBox结合其提供的命令来完成的. Bat代码: @echo off for /l ...
- 脚本启动慢_Linux 常用运维脚本,建议收藏
同步本机时间 ntpdate 210.72.145.44 清除系统缓存,空出更多内存 free && sync && echo 3 > /proc/sys/vm/ ...
- 【转载】java中Date与String的相互转化
1:大体思路 这种转换要用到java.text.SimpleDateFormat类 字符串转换成日期类型: 方法1: 也是最简单的方法 Date date=new Date("2008-04 ...
- Linux学习总结(55)——Linux 运维常用脚本
同步本机时间 ntpdate 210.72.145.44 清除系统缓存,空出更多内存 free && sync && echo 3 > /proc/sys/vm/ ...
- LINUX 添加xp虚拟机
微软已停止对xp系统的漏洞更新支持.不过,目前国内各大技术大佬都相继声明,继续提供xp的漏洞更新服务,为xp保驾护航! 省内存嘛,所以还得装一个玩! 安装时的激活key : HTXH6-2JJC4- ...
- k8s glusterfs mysql_k8s使用glusterfs实现动态持久化存储
简介 本文章介绍如何使用glusterfs为k8s提供动态申请pv的功能.glusterfs提供底层存储功能,heketi为glusterfs提供restful风格的api,方便管理glusterfs ...
最新文章
- java学习笔记_Java学习笔记——第1篇
- Android呼叫开发系列WebService
- ZPhotoEngine超级算法库
- js---25桥模式
- Django基础(四)
- 读书笔记 - 《吉卜力的伙伴们》
- 360安全卫士核心改名ZhuDongFangYu.exe
- 在ASP.NET Core中编写合格的中间件
- about-ie下模拟input file上传功能失效
- 5 加盐_洗猪肚,加盐洗就错了!加这2样,5分钟洗净,猪肚不腥不臊更入味
- android edittext最多输入,android 中如何限制 EditText 最大输入字符数
- 存数据返回他的序列号id_雪花般的分布式唯一ID雪花算法
- 【ShaderLab学习】AlphaTest AlphaBlend理解[2]
- php源码授权网络验证系统,WEB端管理网络验证授权系统源代码
- 四千个厂商默认账号密码 默认登录凭证
- 电影院订票选座小程序 电影小程序毕业设计 毕业论文 开题报告和效果图
- 以太坊Ghost协议
- 不懂就要问!流量卡拒收对个人会有影响吗?
- Js实现在线Hex转Base64,在线Base64转Hex
- java,jsp获取上一个访问页面URL