函数语法:
function 函数名() 函数名:自己取的,定义
{
函数代码; 函数代码:要执行的代码
}
匿名函数:
var aa = function(){
}
直接把函数赋值给变量aa,调用的时候:aa()
<script type="text/javascript"> var a = function b(){ var c =1111; } alert(a) </script>
弹窗a就会显示函数
return在函数中的作用:当函数执行到return语句时,不管后面有无代码,都将结束函数的执行。
递归函数,就是在函数体内调用函数本身,实现循环,比如可以求阶乘
<script type="text/javascript"> function fact(num){ if (num<=1){ return 1; // }else{ return num*fact(num-1); //10进入函数,自动调用9,一直到1;停止函数,并且返回值 } } document.write(fact(10)); </script>
如果不加入return,会编程死循环
函数参数传递
<script type="text/javascript"> function push(a,b){ var sum = 0; if(a > b){ return false; } for(var i = a ; i <= b ; i++){ sum+=i; } return sum; //return sum 删除,换成alert(sum),p标签的点击事件改成:onclick=“push(1,100)”
} </script> </head> <body> <p onClick="alert(push(1,100))">显示1+2+3.····+100</p>
function fact():参数是空的,名为形式参数,行参
<script language="JavaScript" type="text/javascript"> var demo=function(m,n){ // 2个形参 document.write("m="+m); document.write(" n="+n); } demo(10,20); // 2个实参 document.write("<br />"); demo(10,20,100); // 3个实参 document.write("<br />"); demo(10); // 1个实参 </script> 输出结果
m=10 n=20
m=10 n=20
m=10 n=undefined
以上结果表明:
- 调用函数传递的实参与定义函数规定的形参是依次对应的,即第1个实参的值传递给第1个形参,第2个实参的值传递给第2个形参...
- 超出形参数目的实参不传递其值。
- 如果没有对应的实参(实参数目少于形参数目)传入,其值为undefined。
内容基本参考自http://www.itxueyuan.org/