//一个简单的递归函数

<script>
  function b(num)
  {
    if(num > 3)
    {
      b(--num);
    }
    document.write(num + "&nbsp");
  }

  b(5);
</script>

 

输出为3 3 4

 

/*JS函数可以接收任意个参数,所以一个函数名只能标识一个函数,就算参数数量不同表示的也是同一个函数*/

/*并且可以利用arguments里的方法对参数进行访问*/

<script>

  function ar()
  {
    alert(arguments.length);
  }

  ar(1, 2, 3);

  ar();

</script>

弹窗显示的第一个是3第二个是0,即参数个数

 

//遍历所有参数

<script>
  function tr()
  {
    for(var i=0; i<arguments.length; i++)
      document.write(arguments[i] + "&nbsp");
  }

  tr(10, 20 ,30);
</script>

输出即为各参数10, 20, 30

 

/*JS函数天然支持参数类型可变*/

<script>
  function tr(n1, n2)
  {
    for(var i=0; i<arguments.length; i++)
      document.write(arguments[i] + "&nbsp");
  }

  tr(10, 20 ,30);
  document.write("<br/>");
  tr(1, "什么鬼");
</script>

两次调用都能正常输出。

 

//99乘法表

<script>
  function mul99()
  {
    for(var i=1; i<=9; i++)
    {
      for(var j=1; j<=i; j++)
        document.write(j + "x" + i + "=" + (i*j) + "&nbsp");
      document.write("<br/>");
    }
  }

  mul99();
</script>

输出如下:

1x1=1 
1x2=2 2x2=4 
1x3=3 2x3=6 3x3=9 
1x4=4 2x4=8 3x4=12 4x4=16 
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25 
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36 
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49 
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64 
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81 

 

//保留有效位数,用 变量名.toFixed(n), n表示四舍五入精确位数

<script>
var n = 3.1415926;
document.write(n.toFixed(2) + "<br/>");
document.write(n.toFixed(3) + "<br/>");
document.write(n.toFixed(4) + "<br/>");
</script>

输出为:

3.14
3.142
3.1416