随笔分类 - JavaScript
摘要:上一篇《[让 Generator 自启动][generator]》介绍了通过起动器让 Generator 跑起来,而本篇采用 async 实现更优雅的异步编程。 <! more 从例子开始 借用上一篇例子中的例子说起。 然后,我们需要写一个启动器来启动这个函数。 而采用 async 写,代码则是:
阅读全文
摘要:文章同步自个人博客:http://www.52cik.com/2016/07/11/generator co.html 此前只是简单使用而没有真正的去研究 Generator,这次要好好折腾下这货。 <! more 异步编程 对于 jser 来说,异步非常熟悉了吧,但是真正理解异步的却不多,因为大部
阅读全文
摘要:文章同步自个人博客:http://www.52cik.com/2016/07/10/consecutive dates.html 这是群里一朋友问的问题,当时我说判断下 day 是否相邻即可,后来细想,发现完全不对。 <! more 问题需求 给定5个相同格式的日期,怎么判断是否是连续5天呢? 我当
阅读全文
摘要:这个算是 Chrome only 其他的我没测试,也不想测试。因为我的控制台脚本仅仅在 Chrome 下加载。 如果你需要全平台,那么这肯定不是你需要的结果。 <! more 需求 其实我很早就想折腾这个了,但是,,因为懒,拖了很久,直到周末,我看到服务器上统计,发现流量翻了一倍,结果访问量还是一样
阅读全文
摘要:本文同步自我的个人博客:http://www.52cik.com/2015/11/13/node modules del.html 说到 node 的模块,确实既好用又蛋疼。相信无数人吐槽 node_modules 目录结构的设计了。 确实,npm 没有处理好 peerDependencies 的概
阅读全文
摘要:本文同步自我的个人博客:http://www.52cik.com/2015/11/08/promise.html JavaScript 的 promises 事实标准称为 [Promises/A+][1]。ES6 的 Promise API 便遵循这个标准。 promises 的英文直译是“承诺,诺
阅读全文
摘要:本文同步自我的个人博客:http://www.52cik.com/2015/11/06/replace all.html 关于字符串替换问题,其实是个很简单的问题,但却也不那么简单,至少对于很多新手而言,全局替换一直是个坑。 <! more 简单而强大的正则 可能你觉得要替换全局,就改成正则,然后加
阅读全文
摘要:本文同步自我的个人博客:http://www.52cik.com/2015/11/02/split skill.html 通过js获取 QueryString (location.search部分) 参数很常见,网上代码也满天飞。 不过现在的框架,基本上都通过路由伪静态了,把以前的 QueryStr
阅读全文
摘要:今天分享个小技巧,是群里一个朋友问的,"请问 + 这种类型的字符串怎么转换成我们想要的字符 + ,有什么简便的js方法吗"其实问题说简单也简单,说难也难。我们要分情况来描述问题解决问题才行。一. 纯数字实体编码就例如 + , 这样的,那么借助 正则+fromCharCode ...
阅读全文
摘要:之前群里有人问如何比较两个时间大小,他的时间格式是 2014-08-08 而不是 2014-8-8。所以我给的方法是 直接比较,如:var a = "2014-08-08";var b = "2014-09-09";console.log(a>b, a b因为长度都是 0 ,所以在长度比较的时候就得...
阅读全文
摘要:这几天多次看到有博主们在写 with 的文章,这货确实非常方便,但是却是个性能杀手,所以一直都是上不得台面的。那么他究竟会让效率低下到什么程度呢?先来看下 with 是如何的便捷吧。。// 正常调用console.log(location.host);console.log(location.pat...
阅读全文
摘要:昨天说了 HTML5 的file对象可以获取到文件的 文件名,文件大小,文件类型,最后一次修改日期。其实 IE6-9 也可以变向的获取到,虽然没那么方便,但至少可以取到。来看例子吧: test IE 6IE 7IE 8IE 9chromefirefoxPS: 推荐用虚拟机测试,因为我用I...
阅读全文
摘要:这是个很普通的 file 上传组件,multiple 是支持多选,当然 IE6-9 是不支持的,所以先不论他们了。file对象 是一个非常好用的东西,可以获取到文件的 文件名,文件大小,文件类型,最后一次修改日期。用起来也很简单,来看个小例子: file 不出意外的话,你可以在控制台看到...
阅读全文
摘要:在做头像上传的时候,浏览器默认是无法取得本地图片的,当然 HTML5 是可以的。不过IE6-8怎么破?目前比较通用的方案都是 flash 解决。说道头像预览和裁剪,我最熟悉的就是 Discuz 的那个了,非常方便好用。不仅可以选择本地图片,还能直接调用摄像头拍摄,当然前提是你必须有个摄像头。于是我心...
阅读全文
摘要:就简单聊下如何全局 eval 一个代码。var x = 1;(function () { eval('var x = 123;');})();console.log(x);这个代码得到的是 1 而不是 123如果想让 eval 执行的代码是全局的,那么有几种方法。var x = 1;(func...
阅读全文
摘要:前些天在《浅谈 JSON.stringify 方法》说了他的正确使用姿势,今天来说下 toJSON 方法吧。其实我觉得这货跟 toString 一个道理,他是给 stringify 方法字符串化的时候调用的。看下 MDN 官方文档吧《toJSON behavior》。非常简单,但是要注意的是他和 s...
阅读全文
摘要:其实,之前我一直以为 JSON 会把 ASCII 可显示字符以外的统统转义为 Unicode,直到有一次我用 JSON.stringify 才发现,其实是 PHP 为我们想的太周到了。我以前是一位 phper,所以处理 json 只要 json_encode 就可以把数组转为 json 数据了,非常...
阅读全文
摘要:用过 json 的应该都知道,把一个对象通过 stringify 之后提交给后台或者存储在 Storage 里是很常用的手段。但是 IE6-7 下没有 JSON 对象,所以要借助 json2.js 来实现。今天我们来简单介绍下 stringify 方法的一些正确使用姿势吧。当然,让高手们贱笑了,本文...
阅读全文
摘要:之前也介绍过几款语法高亮插件《为博客园选择一个小巧霸气的语法高亮插件》以及关于他们的综合性能《再议 语法高亮插件的选择》。今天在小影志博客看到《使用 Prism.js 实现漂亮的代码语法高亮》于是心血来潮去看了下,顺便测试了下性能。打开 Prism.js 官网,看到 Used By。。我勒个去,来头...
阅读全文
摘要:2014-11-08 12:18:51 更新,修复原形链方法被当作关键词的bug,其实之前是想用全局关键词的,不过还是算了,array里有太多单词了。 现在length callee 关键词依然会被输出,以后修复,现在为了精简就将就着用了。2014-08-26 14:5...
阅读全文