日期:2014-05-16 浏览次数:20309 次
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Arguments对象</title> <script> var $ = function (id) { return "string" == typeof id ? document.getElementById(id) : id; }; function f(x,y,z) { //[function].arguments.length //[f].arguments.length是得到f方法实际传入的参数数量 //f.length是得到f方法期望传入的参数数量(现在期望3个) for(var i=0; i < arguments.length; i++){ $("dv").innerHTML +="第"+(i+1)+"个参数的值是:" +arguments[i] +";<br>"; } if(arguments.length == 3) { alert("想要传入参数的个数是 "+ f.length); } else alert("实际传入参数的个数是 "+ arguments.length); //实际传入参数的值分别是 arguments[0] = '设置第1个参数的值为'; alert(x); } function factorial(n){ //[function].arguments.callee 返回正被执行的Function对象,有递归功能,也就一起调用factorial函数直到某个条件为此 if (n <= 0) return 1; else return n * arguments.callee(n - 1); //实现递归 } //如4的阶乘 document.writeln(factorial(4)); </script> </head> <body onload="f('xxx',3)"> <div id="dv"> </div> </body> </html>
?