摘要: function inherit(p){ if(p==null){ throw TypeError(); } if(Object.create){ return Object.create(p); } var t=typeof p; if(t!=='object'&&t!==... 阅读全文
posted @ 2014-11-07 18:00 灵瞳 阅读(1166) 评论(0) 推荐(0) 编辑
摘要: 当我们在写一个具有处理可变长度参数的函数时,需要对arguments做一些操作。但是arguments它并不是一个数组,没有数组的各种操作,而且,JS的严格模式中不允许更改它的值。这时我们需要将它的值拷贝到另一个地方。如果以这种方式:var a=arguments;操作的话a得到的只是一个引用,也就... 阅读全文
posted @ 2014-11-06 15:50 灵瞳 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 曾经看到过这样一段有意思的程序:var a=3;function scopeTest(){ console.log(a); var a=2; console.log(a);}scopeTest();在控制台上打印结果为:undefined2对于第一次输出的undefined感觉到奇怪。在查了一... 阅读全文
posted @ 2014-11-05 10:25 灵瞳 阅读(325) 评论(1) 推荐(0) 编辑
摘要: 有这样一个需求: 商品有多个种类的规格,比如: 颜色 大小 是否加厚 红色 S 加厚 蓝色 L 不加厚 黄色 XL 白色 XXL 现在需要生成不同规格组合的多种商品列表供用户选择;这里就用到笛卡尔积的计算。function soDkr(arr) { va... 阅读全文
posted @ 2014-11-04 13:07 灵瞳 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 两个方法都是用来控制事件的频率的,在mousemove,resize等这种高频率触发事件中,控制其响应频率可以明显提高程序的流畅性,减少资源的占用。通过分析其源代码:_.throttle方法源码/** * 频率控制 返回函数连续调用时,func 执行频率限定为 次 / wait * * @param... 阅读全文
posted @ 2014-11-04 09:58 灵瞳 阅读(306) 评论(0) 推荐(0) 编辑