- /*
- * 求给定参数数组元素中的最大值
- *
- * 参数num_arr array类型
- * return max 数值型
- */
- function max_num(num_arr)
- {
- //保存结果,初始化为数组的第一个元素
- var max=num_arr[0];
- var i=0; //循环变量初始化
- //遍历数组,找出最大值放在max中
- for(i;i<num_arr.length;i++)
- {
- if(max<num_arr[i])
- max=num_arr[i];
- }
- return max;
- }
- /*
- * 将函数作为函数参数
- *
- * 参数 function_name 函数的名字
- *
- * return 调用参数中的函数
- */
- function result(function_name)
- {
- var number_arr=new Array();
- //将参数中除去第一个参数的其余参数赋值给数组number_arr
- var i =1;
- for(i;i<arguments.length;i++)
- {
- number_arr[i-1] = arguments[i];
- }
- return function_name(number_arr);
- }
- var a=result(max_num,3,4,5,6);
javascript中的函数是“复合数据类型”,又成为“引用类型”。引用类型的变量指向存储单元中存放的是它们的实际存放地址。函数名是对函数的一种引用.var a=max_num ;a()就可以调用function max_num
另外js函数的一个特点是,无论在函数定义时定义了多少个参数,函数在调用时都可以接受任意个数的参数(最大25个)。就像function result()只定义了一个参数function_name,但是调用的时候可以带多个参数result(max_num,3,4,5,6);