当前位置:网站首页>TypeScript - the use of closure functions
TypeScript - the use of closure functions
2022-08-04 22:49:00 【MXM_777】
function loggingCompare(
logger:(a:number,b:number)=>void,
comp:(a:number,b:number) => number){
return (a:number,b:number)=>{
logger(a,b)
return comp(a,b)
}
}
function create(bbb:{smallFirst:Boolean}){
if (!bbb.smallFirst){
return (a:number,b:number) => b-a
}else{
return (a:number,b:number) => a-b
}
}
function processArray(a:number[]){
let comCount = 0
const logger =(a:number,b:number)=>{
// console.log("compare",a,b)
comCount++
}
const comp = create({smallFirst:true})
a.sort(loggingCompare(logger,comp))
return comCount
}
let a = [2,3,4,5,6,7,8,10,1]
const comCount1=processArray(a)
const comCount2=processArray(a)
console.log(a)
console.log(comCount1,comCount2)
边栏推荐
- SSM整合完整流程讲解
- ffplay视频播放原理分析
- 3D激光SLAM:LeGO-LOAM---两步优化的帧间里程计及代码分析
- 养殖虚拟仿真软件提供高沉浸式的虚拟场景互动操作体验学习
- 【论文笔记KDD2021】MixGCF: An Improved Training Method for Graph Neural Network-based Recommender Systems
- Shell expect 实战案例
- 未来我们还需要浏览器吗?(feat. 枫言枫语)
- PowerBI scripture series
- Deep Learning RNN Architecture Analysis
- 【字符串函数内功修炼】strlen + strstr + strtok + strerror(三)
猜你喜欢
PID控制器改进笔记之七:改进PID控制器之防超调设定
【3D建模制作技巧分享】Maya模型如何导入zbrush
【内存操作函数内功修炼】memcpy + memmove + memcmp + memset(四)
【3D建模制作技巧分享】在zbrush中如何雕刻头发 ZBrush头发雕刻小技巧
BUG | The interface returns abnormal data
【TCP/IP 四 IP 网际协议】
线上虚拟展馆展示具有哪些优势
Latex fast insert author ORCID
【3D建模制作技巧分享】ZBrush模型制作流程:地精
3D激光SLAM:LeGO-LOAM---两步优化的帧间里程计及代码分析
随机推荐
Linux系统重启和停止Mysql服务教程
【项目实战】仿照Room实现简单管理系统
ANT1.7下载以及配置方法
论文解读(PPNP)《Predict then Propagate: Graph Neural Networks meet Personalized PageRank》
【TCP/IP 五 ICMP】
PowerBI scripture series
软测人面试 ,HR 会问到哪些问题?学会涨薪3000+
今天又做了三个梦,其中一个梦梦里的我还有意识会思考?
中国的顶级黑客在国际上是一个什么样的水平?
go语言的日志实现(打印日志、日志写入文件、日志切割)
Operations on std::vector
PID控制器改进笔记之七:改进PID控制器之防超调设定
FinClip崁入式搭建生态平台,降低合作门槛
Acwing3593. 统计单词
使用cpolar优化树莓派上的网页(1)
Ts——项目实战应用enum枚举
Rt-thread [三] link.lds链接脚本详解
BUG | 接口返回异常数据
Charles & TCPDump & Fiddler 抓包三兄弟七夕联手,还抓不到你的心?
备战9月,美团50道软件测试经典面试题及答案汇总