javascript的一些细节知识
最近这段时间大多时候都在调试页面,弄了很久也不太满意,怒了,回去专门看了几天的关于CSS的书,带着些惊恐还是决定试下,基本上搞定了,从此后对页面布局样式等不再感到那么无助与厌恶了。看来以前之所以进步不大,那是压力不够啊!
最近看了下dwr这个东西,虽然很久没更新了,现在项目中用得还是比较多,虽然本人也知道它性能不太好,但用起来确实方便,没办法。所以决定有空好好看看它的实现方式。从中也学到了不少东西。
1.一个方法实现多种参数方式的调用。
如append方法,如果只有一个调用可以这样:
function append(a) { return a;}
function append(a,b) { return a+b;}
function append(a/*,b*/) { var argcount = arguments.length; var lastarg = arguments[argcount - 1]; var arg=0; if(argcount>1){ arg=lastarg; return a+b; } return a;}
function append(a/*,b*/) { var argcount = arguments.length; if(argcount>1){ var sum = a; for(var i=1;i<argcount;i++){ sum = sum+arguments[i]; } return sum; } return a;}
function foo() { alert(append(10)); alert(append(2,3,4,5));}
for(var i=0;i<arguments.length;i++){ alert(arguments[i]); }
function Counter(start) { var count = start; return { increment: function() { count++; }, get: function() { return count; } }}var foo = Counter(4);foo.increment();foo.get(); // 5