摘要: 在这之前,大家应该了解了缓动函数(Easing Functions)的概念:动画的每一帧需要计算一次元素样式,如果样式改变则需要重绘屏幕。细一点讲,当我们每调用一次计时器函数,需要通过向缓动函数传入一些动画上下文变量,从而获取到元素的某个样式在当前帧合理的值。我所了解的缓动函数实现方式有两种,一种是... 阅读全文
posted @ 2014-09-01 21:05 smalldragonluo 阅读(917) 评论(0) 推荐(0) 编辑
摘要: JavaScript采用垃圾自动回收机制,运行时环境会自动清理不再使用的内存,因此javascript无需像C++等语言一样手动释放无用内存。在这之前先说一下垃圾回收的两种方式:引用计数与标记清除。引用计数方式会为每个已分配内存单元设置计数器,当计数器减少到0的时候就意味着该单元无法再被引用,将会被... 阅读全文
posted @ 2014-09-01 20:58 smalldragonluo 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 之前一直以为,在js的位运算中,双精度浮点数在内部会先被转成32位整数,再执行位运算,然后再转为64位数值,因此效率极低。今天实验发现,对浮点执行位运算只会导致数值不准确,而不会导致效率低下,相比乘法,左移位要快66%(其实就是浮点运算与整数运算的差距)。以下结果在 IE 7 ~ IE 10 上测试... 阅读全文
posted @ 2014-09-01 20:52 smalldragonluo 阅读(152) 评论(0) 推荐(0) 编辑
摘要: javascript采用原型继承的方式继承一个类(javascript没有类这个概念,暂时这么称呼吧),但一些使用过Java的程序员可能习惯使用经典的类继承,但javascript原生并不支持这种方式,因此需要手动实现。这里通过定义一个定义类(defineClass)的函数实现,经测试越用越顺手。由... 阅读全文
posted @ 2014-09-01 20:44 smalldragonluo 阅读(343) 评论(0) 推荐(0) 编辑