vue源码cached高阶函数解析
2024-09-29 20:40:06
1、源代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>vue源码cached高阶函数</title>
</head>
<body>
<script type="text/javascript">
function cached(fn) {
console.log(fn,'fn')
const cache = Object.create(null)
// 返回函数 函数中使用了外部的cache ----闭包
return (function cachedFn(str) {
console.log(str,'str');
const hit = cache[str]
console.log(hit, 'hit')
return hit || (cache[str] = fn(str))
})
}
var capitalize = cached(function(str) {
return str.charAt(0).toUpperCase() + str.slice(1)
});
console.log(capitalize,'capitalize')
console.log(capitalize('abc'), '第一次')
console.log(capitalize('abc'), '第二次')
</script>
</body>
</html>
2、cached函数,输入参数为函数,返回值为函数。同时使用了闭包。
最新文章
- Dw CS 破解
- JMeter学习-040-JMeter图形化 HTML 报表概要说明
- JS魔法堂:判断节点位置关系
- Velocity 基本语法
- C语言中float如何存储?
- Java将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。
- Action访问Servlet API
- 解决ThinkPHP开启APP_DEBUG=>;false时报错的问题
- Sql Server 与CLR集成
- bzoj3894
- HOW to Use QP_PREQ_PUB.PRICE_REQUEST API to Price an Item
- C# 图片文件与字符串之间的转换
- hdu1285 确定比赛名次【拓扑排序】
- RFC2616-HTTP1.1-Status Code(状态码规定部分—单词注释版)
- 入坑deep learning 1
- Vuejs——(8)Vuejs组件的定义
- 关于JRebel启动tomcat访问上次工程的index.jsp
- NHibernate Isession管理
- git 常用命令笔记
- Java事务管理之JDBC
热门文章
- Java-子类扩展父类功能
- jquery获取单选button选中的值
- 漫谈js自定义事件、DOM/伪DOM自定义事件
- 如何让access空值变成0?(确切的说是让access Null值变成0)
- Windows Embedded Compact 7初体验
- [实时更新]jquery全部版本号下载
- phpExcel导出文件时内存溢出的问题
- Web系统自己主动化部署脚本
- JDBC操作数据库的批处理
- STL队列 之FIFO队列(queue)、优先队列(priority_queue)、双端队列(deque)