javascript之嵌套函数使用方法

  在javascript中允许使用嵌套函数:

  

   [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  记住这名话:

  嵌套实际是要实现一种循环,是循环就有双个把柄让我们抓:一个是终止条件,一个是增量。

  嵌套函数和普通函数有一点不同:

  既然是嵌套函数,就是把自身当作值运用到函数体内。这就要求函数必须有一个返回值。就要用return语句。

  举例分析:

  例一:

  

复制代码 代码如下:

  function a(x){

  if(x<=1) return 1;

  else return x*a(x-1);

  }

  例一是一个嵌套函数,让我们来找一下二个把柄:if(x<=1) return 1;这是终止条件,当x<=1时终止,else return x*a(x-1);这是增量,每次嵌套调用函数a()时参数都会减1。

  所以这个例子也可以像例二中那样转换成一个循环体。

  例二:

  

复制代码 代码如下:

  function a(x){

  if(x<=1) return 1;

  else{

  var m=1;

  for(var i=2;i<=x;i++){

  m*=i;

  }

  return m;

  }

  }

  如例二所示,嵌套函数就是要实现这样的循环。

  例三:

  

复制代码 代码如下:

  function a(x){

  if(x<=1) return 1;

  else{

  x--;

  return (x+1)*a(x);

  }

  }

  如例三,只要我们在嵌套函数中确定了二个把柄,放在哪里没关系都可以实现函数的嵌套,显然这样写没有例一那么好,是这样的。