文章列表

构建易于扩展的前端统计脚本

,
抛砖引玉,简单聊聊前端统计的方案。 阅读全文

加速 Ghost 静态资源

, ,
Ghost最近势头不错,连续几个月,基本每个月都是release 2个版本,不过也正是因为如此,ghost每次发布之后,API都会有些许变动。故,不建议在官方merge任何i18N功能之前,使用中文版本,毕竟后台没几个英文,前台主题可以依赖自己的主题模板去实现i18N,没有使用影响。下面分享一个简单修改的细节,可以使用七牛一类的CDN服务商无痛加速网站资源。七牛官方分享的加速方案是网友修改storage接口,将内容不存自己的服务器,直接使用CDN,个人觉得不妥,不利于迁移维护,以及临时灾备,况且把AK,SK都存下来,对于后续升级也不利。 阅读全文

格式化 UserAgent

,
数据统计和降级实现基础之一,格式化UserAgent。 阅读全文

更靠谱一些的正则表达式验证 JavaScript URL

, ,
看草稿的时候,看到一段代码,想到之前被不知道谁随手抄来的正则坑的内牛满面...下面是一段相对全面的用例测试,可以考虑使用,当然,如果你的要求很简单,用网上传的各种简单版,cover到自己的用例就好。 阅读全文

console 的简单替换函数

常常稍不注意就会发现IE低版本或者某个覆写了console的浏览器环境因为调用了console而功能出现了一些意外,或者收集了一堆console undefined的错误,推荐的做法不是对浏览器做shim,而是使用自建的函数去代替程序中使用的console。对于开发过程中,我们需要设置日志输出的等级,去过滤不必要的信息,原生的console目测暂时还不支持这个功能。还有诸如向指定服务器提交错误日志,以供后续优化和bugfix。或者提供性能检查支持,估计还需要多添加一些其他的兼容的收集写法,以及常用的打时间戳功能。 阅读全文

Math.random() 随机数的二三事

, ,
看到题目,如果大家平时被问到:如何生成一个怎么样怎么样的整数随机数。估计大家都会不屑,但是当你淡定的回答获取一个范围应该是随机数seeds和区间数值差的乘机与最小数相加然后再怎么怎么的时候...有没有发现你的思维已经固化了呢。这个知识点应该是玩JS肯定会碰到的之一吧。文末有Markdown,可以直接下载阅读,清爽一点。 阅读全文

localStorage 容量测试脚本

, ,
说到localStorage,尤其是谈到它到底可以存储多少内容的时候,多数人都会沉默。有的时候你翻浏览器官方release log要么是没有,如果有,也可能在某个小版本突然变动,现在,外壳浏览器越来越多,这件事情就变的更加棘手了。浏览器的版本更迭很快,不同的终端,不同的系统,不同的浏览器对于这个问题都可能产生不同的结果。接下来我会完善一个收集脚本(如果哪位愿意写一个,这里就thank you very much鸟),统计大家的测试数据,最后公开数据,造福大家。 阅读全文

简单的 i18N 脚本

,
一个简单的i18N脚本,如果在单页面展示页面中你有切换语言的需求,那么可以尝试使用它。如果有任何建议或者意见,欢迎反馈。 阅读全文

论如何在 ATA 获得一本书

原标题《论如何在ata获得一本书,我不是来要咖啡券的,也不是来讨赞的》 阅读全文

一个不错的 Key Value 存储设计思路

,
做项目的时候看到的一个设计,没有深究后端实现,有空验证一下,粗浅的想了一下,这样设计中间的缓存极大扩展了储存空间,防止了KEY冲突,对前端也比较友好。即使接RDBMS,也比较容易拆分,赞。看到的越多,就越感觉自己知道的太少,学到的越多,就越对技术产生渴望,或许这也是一种贪婪吧。 阅读全文