斐波那契数列
描述
写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下:
12F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.
斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。结果大于1000000007时,需要做取模处理,如计算初始结果为:1000000008,请返回 1。
代码方式一:递归+闭包方式二:纯遍历1234567891011121314151617181920212223242526const fib = function (n) { // 缓存, 提前有n=0,1,2的值 const cache = new Map([ [0, 0], [1, 1], [2, 1], ]) // 内部函数 function inner(n) { // 缓存中有,直接取出 if (cache.has(n)) { return cache.get(n) ...
防抖和节流
防抖函数
在规定时间内重复触发时,会重新计时
1234567891011121314151617/** * @description 在一定时间内,持续触发,会重新计时 * @param (fn, wait) fn-要防抖的函数, wait-延迟毫秒数 * @return 防抖动后的函数 */function debounce(fn, wait = 500) { let timer = null return function(...args) { if(timer) { clearTimeout(timer) } timer = setTimeout(() => { fn.apply(this, args) timer = null }, wait) }}
使用HTMLJS1<input type="input" id="username" />123456789101112 // J ...
使用gulp打包压缩
默认情况下hexo g构建生成的代码是没有压缩的,在文件比较大时,影响加载速度,所以这里使用gulp帮助我们在构建后,做下代码压缩工作
安装gulp在项目根目录下,命令行中输入以下指令,安装gulp
1yarn add gulp -D
安装插件在项目根目录下,命令行中如下以下指令,安装相关插件
12345yarn add gulp-clean-css -Dyarn add gulp-terser -Dyarn add gulp-uglify -Dyarn add gulp-html-minifier-terser -Syarn add gulp-htmlclean -S
编写gulp配置在项目根目录新建gulpfile.js文件,填写内容如下:
123456789101112131415161718192021222324252627282930313233343536373839404142const gulp = require('gulp')const cleanCSS = require('gulp-clean-css')cons ...
博客增加搜索文章功能
为了给博客新增搜索文章功能,在查看butterfly-搜索系統文档 后,选择hexo-algoliasearch插件,简单方便
安装hexo-generator-search
hexo-generator-search官方文档
在命令行中,使用以下命令安装插件
1yarn add hexo-generator-search --save
在博客根目录的_config.butterfly.yml配置文件中,进行如下配置,开启搜索功能
12local_search: enable: true
如果遇到报错,可以按照如下步骤重新试下
1234# 清除缓存hexo clean# 生成博客hexo g
参考
butterfly主题-搜索系統hexo-generator-search
博客搭建.md
安装Hexo
Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
安装前提
Node.js (Node.js 版本需不低于 10.13,建议使用 Node.js 12.0 及以上版本)
Git
如果你的电脑已经安装上面两个软件,就可以跳过,进入后续的步骤;
如果没有安装,那就按照 安装Git和Node教程,安装对应的软件后,在进行后面的步骤。
下载并安装hexo在命令行中,输入以下命令并回车,使用 npm 安装 Hexo
1npm install -g hexo-cli
安装完成后,可以输入以下命令,查询当前的版本号,用于检测是否安装成功
1hexo version
打印结果如下:
更多用法请参考 hexo官方文档
创建博客网站安装 Hexo 完成后,执行下列命令,新建一个博客网站
新建博客网站123hexo init my-blogcd my-blognpm install
my-blog: 这是存放博客网站的目录,你可以根据情况修改
目录结构新建完成后,my-blo ...
