//出错由于fact已经不是函数了【澳门新葡亰1495app】

当前位置: 澳门新葡亰1495app > Web前端 >

网页制作web前端之家文章简介:js递归函数调用自身时的保险方式。

来自js高级程序设计一个典型阶乘递归函数:function fact{return 1;}else{return num*fact;}}以下代码可导致出错:var anotherFact = fact;fact = null;alert; //出错由于fact已经不是函数了,所以出错。用arguments.callee可解决问题,这是一个指向正在执行的函数的指针。新的函数为:function fact{return 1;}else{return num*arguments.callee; //此处更改了。}}var anotherFact = fact;fact = null;alert; //结果为24.

上一篇:故'12'表示为十进制的------'此处虽省略第二个参数 下一篇:没有了