JavaScript Archive

小技巧:如何判断当前的代码被混淆了?

不知道你有没有思考过一个问题,当前的很多框架&库,都在开发环境和生产环境下有不同的表现。例如react,vue等,可以判断props 的类型,并且在开发环境下打印警告信息,而生产环境则不会。这是如何做到的呢?

ES5和ES6中的继承

Javascript中的继承一直是个比较麻烦的问题,prototype、constructor、__proto__在构造函数,实例和原型之间有的复杂的关系,不仔细捋下很难记得牢固。ES6中又新增了class和extends,和ES5搅在一起,加上平时很少自己写继承,简直乱成一锅粥。不过还好,画个图一下就清晰了......

【译】基于webpack使用ES6新特性

在做一个移动端项目时,考虑如何结合使用ES6,react,webpack,babel。查了一些文章,其中一篇简单易懂,顺手翻译一下。

前端开发环境——fede2

这次介绍下自己搭建的前端开发环境:fede2。今年6月底入职新公司,经过一段时间的熟悉后,开始渐渐参与到前端开发,发现不少问题:老东家的开发方式:后端使用freemarker模板。重构写好html和css后,前端改为freemarker模板,拿到后端的接口文档,基于一个...

经常用的几个javascript代码片段

刚到公司的时候,做了几个通用js组件,原生js写的,所以积累下一写比较好的代码片段,经过几次反复使用,质量还是比较有保证的。太长时间没写博客,这里分享出来刷刷人气。文章中的代码都在gist上同步了......

ProtoBuf.js – Protocol Buffers的Javascript实现

在Javascript里比较常见的数据格式就是json,xml,但是这两种格式在数据传输方面有明显不足。而Protocol Buffers可以很好的解决这个问题,下面引用百科的对Protocol Buffers的定义...

使用 tictac.js 实现倒计时

Tictac.js 是应项目需要写的一个倒计时组件,比较简洁(或者说简单),主要功能是:“当前时间”可配置,可以使用服务端时间可以设定一个时间间隔,周期性执行回调函数注册任意多个“计时器”实例,每个计时器结束会触发回调函数自定义倒计时的时间展示格式...

使用Document.scripts获取引入文件的<script>标签

有些时候,使用javascript控件的时,需要执行一些初始化设置,那么一般的做法是这样的:暴露一个初始化的方法,使用时自行调用执行初始化。一般来说这还是比较合理的,但是某些需求下就比较不科学了,例如实现类似知乎的“用户信息名片”这个功能...

使用 Travis CI 进行Javascript集成测试

前面一直在学习Jasmine,并且很简单很简单的测试了jqPaginator的代码,这一次来看看怎么使用Travis CI对Github的项目进行自动化集成测试。借用wikipedia的话介绍下......

Javascript测试框架Jasmine(七):jqPaginator测试实例

jqPaginator是我自己写的一个分页组件,已经用在了公司的两个项目上。这次学习Jasmine,首先想到的就是怎么测试下jqPaginator。看过jqPaginator项目的都知道,它是基于grunt自动化构建的,使用Jasmine自动化测试的话,就要用到grunt-contrib-jasmine了......