代码改变世界

练习 Javascript 中 arguments.callee 使用用法

2012-02-23 22:55  音乐让我说  阅读(285)  评论(0)    收藏  举报

 arguments.callee 是返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文。

例子演示:

<!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>
<title></title>
<script type="text/javascript">
// 计算一个数的阶乘
function factorial(num)
{
if(num <= 1)
{
return 1;
}
return num * factorial(num - 1);
}
function newFactorial(num)
{
if (num <= 1)
{
return 1;
}
return num * arguments.callee(num - 1);
}
var x = newFactorial;
newFactorial
= null;
alert(x(
4)); //24
alert("你好!");
var y = factorial;
factorial
= null;
alert(y(
4)); //出错,下面将不会弹出 Hello World
alert("Hello World");

</script>
</head>
<body>
<h1>
练习 Javascript 中 arguments.callee 使用用法
</h1>
<div>
arguments.callee 是返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文。
</div>
</body>
</html>

 

谢谢浏览!