08 js函数
函数的三种声明方式
函数的声明:
方式一:
function 函数名(形参1,形参2...){
函数体
}
方式二:声明的同时执行一遍函数体
var 函数名 = new Function("形参1","形参2"...,"函数体")
方式三:
var 函数名 = function(形参1,形参2,...){
函数体
}
<script type="text/javascript"> //方式一: function test1(a,b){ document.write("方式一:test1传入了"+a+"与"+b); } test1(1,2); document.write("<br/>") //方式二: var test2 = new Function("a","b","document.write('方式二:test2传入了'+a+'与'+b)"); test2(2,3); document.write("<br/>") //方式三: var test3 = function(a,b){ document.write("方式三:test3传入了"+a+"与"+b); } test3(4,9); </script>
js函数的参数
js函数的参数
1.调用函数时可以不传入实参,因为js的参数会获得默认值undefined
2.传入实参也可以不传完:传入的赋值,没传的默认值undefined
3.多穿实参也可以,可以完整赋值
function test4(a,b){ document.write("参数1="+a+"参数2="+b); } document.write("<br/>不传参<br/>"); test4(); document.write("<br/>不传完<br/>"); test4(1); document.write("<br/>多传参<br/>"); test4(1,2,3);
运行结果:
函数的返回值
由于js中所有的变量都用var来声明,所以返回值也可以直接用var来接收,所以无需像java的方法写返回值类型,而直接在函数体中使用return返回即可,返回的值可使用一个变量接收、也可直接使用。
function test5(){ return '你好吗?人类'; } var result = test5(); alert(result);
函数作为实参传入另一个函数
function test6(){ alert("我是test6"); return "我是test6的返回值"; } function test7(a){ alert(a); //2.把函数作为对象传入后还可以执行该函数 //a() } //1.把函数作为对象传入 // test7(test6); //3.把函数的运行结果传入:如果运行结果没有返回值则为undefined test7(test6());