- 博客(7)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 Array对象扩展
[size=large]虽然现在各大高级浏览器都支持了数组对象的扩展方法,例如some,forEach等,但是为了兼容各低端浏览器,流行框架会添加自己的支持方法,下面列出常用的一些扩展:[/size] [code="javascript"] Array.prototype.indexOf = function(item, fromIdx){ var length = this...
2012-06-29 11:37:43 122
原创 Javascript设计模式之:惰性方法
想象一个场景,一个function的作用是进行大量的计算,然后返回这个计算结果。 那么我们是不是在每次调用的时候都计算一次呢?这样肯定不是好办法。 解决办法是把结果存起来,然后再次调用的时候直接返回结果: [code="javascript"] function lazy(){ var r = doSomething..; lazy = function(){ return ...
2011-12-15 09:56:08 150
Javascript设计模式之:自我重写的function
我们在一个闭包计数器的时候通常写成: [code="javascript"] var count = (function (){ var c = 1; return function(){ return c++; } })(); [/code] 有没有其他方法实现同样的功能?答案是有的,那就是自我重写的function: [code="javascript"...
2011-12-15 09:44:23 236
Javascript设计模式之:加载时的分支
由于各个浏览器的兼容问题,在写脚本的时候经常会为了兼容多个浏览器而写多个分支。 判断浏览器的方法一种是使用userAgent,一种是使用特性判断,这里以特性判断为例。 例如: [code="javascript"] function addEvent(obj, type, func){ if(document.addEventListener){ obj.addEventL...
2011-12-14 10:02:01 93
悲催的this悲催的new
今天才发现,原来我对this的理解竟然如此模糊,原来我对new的了解也没有那么多。。 伤心 :cry: :cry: 早晨无意中写了一段代码: [code="javascript"] function test(){ this.a=100; console.log(a); } try{ new test(); }catch(e){ console.log(e);...
2011-12-02 16:04:26 93
创建函数方式及位置不同的结果
[code="js"] function a(){ alert(1); } a() function a(){ alert(2); } a() a = function (){ alert(3); } a() a= function (){ alert(4); } a() [/code] /* *输出的结果是 2 2 3 4 *得出结论是 如果是赋值...
2011-04-15 15:52:53 105
关于事件流在各个浏览器下触发顺序的讨论
大家都知道dom的事件流顺序:先捕获,再冒泡,我写了个小测试(本文忽略ie浏览器,主要讨论标准dom事件流) 测试环境: ff=>Firefox3.3.11 opera=>Opera10.63 chrome=>Chrome6.0(有点老了,平时用的ff) [code="html"] 触发顺序: (function(){ //var divObj = documen...
2010-12-06 16:57:25 183
4天学会AJAX PDF
2010-01-22
双鱼文本编辑器PiscesTextEditorV1·2
2009-01-19
javascript浮点数取反两次得到整数,这是为什么?
2010-09-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人