Javascript——函数参数及举例

函数参数:在函数定义的时候,函数名字后面的小括号里的变量就是参数。在函数调用的时候,按照提示的方式,给变量赋值就叫传值,把这个值传到变量(参数)中。

函数名字要遵循驼峰命名法
函数一旦重名,后面的会把前面的函数覆盖

形参:函数在定义的时候小括号例的变量叫形参
实参:函数在调用的时候小括号里传入的值叫实参,实参可以是变量也可以是值。
函数没有明确的返回值,但是在调用的时候接收了,那么结果就是undefined
(没有明确的返回值:函数中没有return,函数中有return,但return后面没有任何内容)
变量声明了,没有赋值,结果也是undefined
形参个数和实参个数可以不一致。
return下面的代码不执行

set:设置
get:获取
函数的返回值:在函数内部有return关键字,并且在关键字后面有内容,这个内容被返回了,当函数调用之后,需要这个返回值,那么就定义变量接收即可。

函数定义:有参数有返回值的函数

//函数定义
function consoleSum(x,y){
    var sum=x+y;//计算和
    console.log(sum);//输出和
}
//函数调用
var num1=parseInt(prompt("输入第一个数字"));
var num2=parseInt(prompt("输入第二个数字"));
consoleSum(num1,num2);

例:

function getSum(x,y){
    var sum=x+y;
    return sum;//把和返回
}
//函数调用
var result=getSum(10,20);
console.log(result+10);

如果一个函数中有return,那么这个函数就有返回值。如果没有return,就没有返回值。

例1:求两个数字的和:获取任意的两个数字的和

function getSum(x,y){
    return x+y;
}
console.log(getSum(10,20));

例2:求m-n之间所有数字的和

function geteverySum(n, m){
    var sum=0;
    for(var i=n; i<=m; i++){
        sum+=i;
    }
    return sum;
}
console.log(geteverySum(1, 100));

例3:判断一个数是否是素数(质数),只能被1和自身整除,质数是从2开始,因此用这个数字和这个数字前面所有的数字整除一次(没有1的,没有自身的)

function isPrimeNumber(num){
    for(var i=2; i<num; i++){
        if(num%1==0){
            //说明有一个数字整除了,就没必要向后继续整除了,此时就已经验证出不是质数
            return false;
        }
    }
    return true;
}
var result=isPrimeNumber(7);
if(result){
    console.log("这个数字是质数");
}else{
    console.log("这个数字不是质数");
}

例4:求一组数字中的最大值

function getArrayMas(array){
    //定义变量假设这个变量中存储的是最大值
    var max=array[0];
    for(var i=0;i<array.length; i++){
        if(max<array[i]){
            max=array[i];
        }
    }
    return max;
}

例5:求一组数组中的最小值

function getArrayMin(array){
    //假设这个变量里存储的是最小值
    var min=array[0];
    for(var i=0;i<array.length; i++){
        if(min>array[i]){
            min=array[i];
        }
    }
    return min;
}
//测试
console.log(getArrayMin([10,20,30,40,1]));

例6:求一个数组中的最大值和最小值还有和

function getArrayMaxAndMinAndSum(array){
    var min=array[0];//最小值
    var max=array[0];//最大值
    var sum=0;//和
    for (var i=0; i<array.length;i++){
        sum+=array[i];//和
        //最大值
        if (max<array[i]){
            max=array[i];
        }//end for
        //最小值
        if(min>array[i]){
            min=array[i];
        }//end for
        var arr=[arr, min, sum];
        return arr;
    }
}
//测试
var resultArray=getArrayMaxAndMinAndSum([1,2,3,4,5,6]);
console.log("最大值:"+resultArray[0]);
console.log("最小值:"+resultArray[1]);
console.log("和"+resultArray[2]);

例7:通过函数实现数组反转

function reverseArray(arr){
    for(var i=0;i<arr.length/2;i++){
        var temp=arr[i];
        arr[i]=arr[arr.length-1-i];
        arr[arr.length-1-i]=temp;
    }
    return arr;
}
console.log(reverseArray([1,2,3,4,5]));

例8:求一个数字的阶乘

function getJieCheng(sum){
    var result=1;
    for(var i=1;i<=num;i++){
        result*=i;
    }
    return result;
}
console.log(getJieCheng(5));

猜你喜欢

转载自blog.csdn.net/mintsolace/article/details/91479941