函数记忆
函数记忆是指将上次的计算结果缓存起来,当下次调用时,如果遇到相同的参数,就直接返回缓存中的数据。
实现原理
构造一个记忆封装函数 memoize(),接受功能函数作 func() 为参数,返回一个包装后的新函数 memoizedFunc(), memoizedFunc 函数会缓存每次结算结果,并检查前后两次调用时接受的参数是否一致,如果是直接返回结果,跳过 func() 方法的执行。还得考虑到多参数问题。
underscore 代码实现
1 | var memoize = function(func, hasher) { |
深浅拷贝梳理
循环引用
null 值
create-react-app build 后的文件引用采用相对路径
在 package.json 文件中 增加 一级 "homepage": "./",
配置。
1 | { |
重新构建后生成的 html 文件就会用相对路径的形式引入其他文件。
导出 mysql 表的结构和注释到 Excel
发现大部分数据库管理软件都不支持直接将表结构导出成 Excel 格式,但是这些软件基本上都支持 sql 查询并已表格形式展示结构,查询结果是支持导出 csv 的。
所以可以通过如下 sql 语句将所有表的结构信息输出,然后手动导出或者复制结果。
1 | SELECT |
导出后可能出现乱码的请求,这是可以参考这篇文章