本站是基于jekyll和github pages搭建的,jekyll搭建自己的博客非常方便,通过jekyll serve -w可以持续监控文件的修改情况、编译成HTML并通过HTTP服务给本机(localhost)进行访问。但是当你使用虚拟机的时候,特别是centos虚拟机连图形界面都没有,这时候你必须把它上传到github然后通过github.io来访问,这样改一步传一步很麻烦,由于jekyll将地址绑定到了127.0.0.1,导致局域网的其它机器并不能访问它的服务。原先我也走了很多弯路甚至想搭建Apache服务器来让外机可以访问虚拟机的jekyll项目,但实际上只要改变运行jekyll的参数就可以了
当你把linux环境布置好了之后,又有一个蛋疼的事情来了,一些IDE,或者是linux下的软件这么装?当然如果是centos只需要命令式的就好了,一般都只要apt-get一下就OK了,我这里说的是ubuntu或者deepin之类的图形界面式的,我是小白啦,只能从图形开始玩。
关于linux如何配置node环境,因为node环境需要干净的系统,所以linux是再好不过了,windows一直有不知名的bug,而且网上的node教程大多是面向linux环境的,所以配置一个linux的node环境是最好的,当然你可以用一个VM虚拟机配置linux,新手推荐Ubuntu甚至deepin都可以,图形化,方便有效,后期习惯了再去用centos,cenos主要是命令式的方便学习,不适合初学者,最起码不适合不熟悉linux的孩子。
关于写倒计时大家可能都都比较熟悉,使用 setTimeout 或 setInterval 就可以搞定。几秒钟或者几分钟的倒计时这样写没有问题,但是如果是长时间的倒计时,这样写就会不准确。如果用户修改了他的设备时间,这样的倒计时就没有意义了。今天就说说写一个精确的倒计时的方法。
本文将介绍如何使用 JavaScript 创建文件,并自动/手动将文件下载。这在导出原始数据时会比较方便。
/**
* 创建并下载文件
* @param {String} fileName 文件名
* @param {String} content 文件内容
*/
function createAndDownloadFile(fileName, content) {
var aTag = document.createElement('a');
var blob = new Blob([content]);
aTag.download = fileName;
aTag.href = URL.createObjectURL(blob);
aTag.click();
URL.revokeObjectURL(blob);
}
很简单对吧,直接调用这个方法,传入文件名和文件内容,程序新建 a 标签,新建 Blob 对象,将文件名赋给 a 标签,同时将 Blob 对象作为 Url 也赋给 a 标签,模拟点击事件,自动下载成功,最后再回收内存。下面我们来看看具体是怎么操作的。
简单来说 Fisher–Yates shuffle 算法是一个用来将一个有限集合生成一个随机排列的算法(数组随机排序)。这个算法生成的随机排列是等概率的。同时这个算法非常高效。
本文主要介绍这个算法的来源、演变、原理。并举出一个例子为大家清晰的描述每次迭代过程。最后使用 JavaScript 代码将算法实现。