2012年6月15日
摘要: 时隔3个半月的日志——这段时间新入手了新车,折腾车去了,导致近期的技术积累都没有及时沉淀下来。回到技术上来,最近在做SVN和迁移代码优化时,决定放弃之前用了N久的JS压缩工具,改用比较流行的YUICompressor,主要原因是:1、YUICompressor可以进一步对代码进行优化,包括省略不必要的分号和添加必要的分号等,而之前的压缩工具不会管这些,没分号就保留换行,或者强制压缩就会脚本报错;2、YUICompressor强大的混淆功能,进一步压缩代码量,即提高被分析的门槛,也减少了代码的体积。要知道我们有一部分代码是通过IDC网络来输出的;3、基于java,开源,方便修改,而且在Mac上也 阅读全文
posted @ 2012-06-15 16:00 费神 阅读(425) 评论(0) 推荐(0) 编辑
  2012年2月28日
摘要: 众所周知,IE家族有Quirks模式和Standards模式,2种模式对盒的解析不同,Quirks模式内容的宽度为width-borderWidth-padding,而Standards模式内容的宽度即为width。然后,不同的IE版本也未必完全根据compatMode来适用两种模式,比如没打过补丁的IE6,即使是CSS1Mode,也还是使用Quirks模式。那么,如何使用JS来检测呢?根据上面描述的特点,我们可以很容易检测,在页面中通过 position: absolute; top: -1000px; left: -1000px 来创建一个在页面以外的div,并且指定 width: 5px 阅读全文
posted @ 2012-02-28 20:47 费神 阅读(212) 评论(0) 推荐(0) 编辑
  2012年2月27日
摘要: 代码重构,保证重构后的功能和原有功能一致是硬性要求。对于有完善单元测试的代码,重构后的质量保证相对容易做,但是如果中间方法的接口有变更,或者没有单元测试覆盖,要想保证代码重构的质量,就要根据其特性制定有针对性的测试方法了。对于大部分代码重构,入口和出口都会是一致的,这样我们可以将2套代码都发布到外网,在入口处默认走原始代码,同时按一定比率将新代码也走一边,在出口处做输出对比,如果对比不一致则调用特定的后台接口上报特定的参数或错误信息等,以方便问题的定位。当然,如果涉及到DOM的变更,可以考虑采用隐藏的DOM来执行新代码。当然,这种测试方式额外的工作就是入口的处理和出口的检测,尤其对于涉及DOM 阅读全文
posted @ 2012-02-27 15:08 费神 阅读(556) 评论(0) 推荐(0) 编辑
摘要: 经常看到有同学声明一个Object对象或者说命名空间的时候用如下的写法:window.XXX = window.XXX || {};XXX.ooo = { pfid : 3, url : 'xxx.php'};但是有时候,声明时的一个key的value要用到另外一个key的value,用这种方式就比较麻烦,建议的写法是:window.XXX = window.XXX || {};XXX.ooo = XXX.ooo || {};XXX.ooo.pfid = 3;XXX.ooo.url = XXX.ooo.pfid == 3 ? 'xxx.php' : 'o 阅读全文
posted @ 2012-02-27 14:48 费神 阅读(355) 评论(0) 推荐(0) 编辑
  2012年2月24日
摘要: 近期在处理一个时间展示,要求月日时分秒固定展示2位数字,毫秒固定展示3位数字,传统的作为是根据小于10、小于100等在前面添加特定个数的0,昨晚突然想到,字符串的slice方法可以指定一个负数值来取字符串的后面n个字符,这样在原始数字前面添加指定个数的0即可轻松实现。而添加指定格式的0又可以通过数组join的方法实现重复字符串,于是有了下面的代码:/** * 取固定字符数包含前导0的数字 * * @param {Number} 原始数字 * @param {Number} [r=2] 字符数 * @return {String} 处理后的字符串 */function _f(n, r) { .. 阅读全文
posted @ 2012-02-24 17:51 费神 阅读(591) 评论(0) 推荐(0) 编辑
摘要: n.replace(/(\d+?)(?=(?:\d{3})+$)/g, '$1,')其中n为String类型。这段正则使用了前瞻的方法,匹配的数字后面必须有3的n倍个数字,保证3个为1组,并将匹配出来的数字后面添加逗号。效果: 4 4 25 25 422 422 3189 3,189 50445 50,445 254931 254,931 9624366 9,624,366 42537038 42,537,038 773962051 773,962,051 6149502266 ... 阅读全文
posted @ 2012-02-24 17:40 费神 阅读(2192) 评论(0) 推荐(1) 编辑