我必须先说Java与JavaScript没有关系,不是我以前想的那个样子的(JavaScript是Java的一种超进化)
在JavaScript中,函数(function)就是对象。
JavaScript的函数参数与调用函数的表达式之间的参数关系并不是一一对应的,他们是一种十分微弱的关系。
在JavaScript中,定义function的方式有三种:
第一种:
1 function add(number) 2 { 3 alert(number+20); 4 }
第二种:
1 var add=function(number) 2 { 3 alert(number+20); 4 }
第三种:
在JavaScript中有一个Function对象,所有自定义的函数都是Function对象类型的。Function对象接收的所有参数都是字符串类型的,其中最后一个参数就是要执行的函数体,而前面的参数则是函数真正需要接收的参数。
1 var add = new Function("number", "alert(number + 20);");
在JavaScript中,每个函数都有一个隐含的对象arguments,表示给函数实际传递的参数。没有方法(函数)重载的概念,可以使用arguments来实现函数的重载功能。
1 function add2() 2 { 3 if(1 == arguments.length) 4 { 5 alert(arguments[0]); 6 } 7 else if(2 == arguments.length) 8 { 9 alert(arguments[0] + arguments[1]); 10 } 11 else if(3 == arguments.length) 12 { 13 alert(arguments[0] + arguments[1] + arguments[2]); 14 } 15 } 16 17 add2(3); 18 add2(3, 4); 19 add2(3, 4, 5);