JavaScript 函数

45 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路

函数

函数:就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现大量代码的重复使用

// 声明函数

function 函数名(){

    return  需要返回的值;

}

//举例

function sayHello(){

  console.log(“hello”);

}

  • function 是声明函数的关键字,必须小写

  • 由于函数一般是为了实现某个功能才定义的, 所以通常我们将函数名命名为动词,比如 getSum;

  • 函数需要调用后才执行,不调用里面代码块不执行。

函数的调用

  // 声明函数 计算1-100之间的和

  function getSum(){

    var sumNum = 0;// 准备一个变量,保存数字和

    for (var i = 1; i <= 100; i++) {

      sumNum += i;// 把每个数值 都累加 到变量中

    }

    alert(sumNum);

  }

 getSum(); //函数调用。

函数的参数

  • 形参:函数定义时设置接收调用时传入

  • 实参:函数调用时传入小括号内的真实数据

参数的作用 : 在函数内部某些值不能固定,我们可以通过参数在调用函数时传递不同的值进去。

function say(mylanguage){

  console.log(“请说” + mylanguage);

}

say(“中文”);

  // 带参数的函数声明

  function 函数名(形参1, 形参2 , 形参3...) { // 可以定义任意多的参数,用逗号分隔

    // 函数体

  }

  // 带参数的函数调用

  

函数名(实参1, 实参2, 实参3...);

  1. 调用的时候实参值是传递给形参的

  2. 形参简单理解为:不用声明的变量

  3. 实参和形参的多个参数之间用逗号(,)分隔

 function getSum(sum1,sum2,sum3){

 console.log(sum1);

  console.log(sum2);

   console.log(sum3);

}

 getSum(sum1,sum2,sum3);

总结:

  • 声明函数的时候可以不带参数;

  • 实参多于形参时,形参只读取形参的个数;

  • 实参少于形参时,形参未赋值undefined,为了确保不可避免错误,传参需一致。

函数的返回值

返回值:函数调用整体代表的数据;函数执行完成后可以通过return语句将指定数据返回。

// 声明函数

function 函数名(){

    return  需要返回的值;

}

//举例

function getName(){

return “小二班的:张三”;

}

var myname = getName();

console.log(myname);

  •  在使用 return 语句时,函数会停止执行,并返回指定的值

  •  如果函数没有 return ,返回的值是 undefined

  •  return只返回一个值,如return 1,2。//返回2

break ,continue ,return

  • break :结束当前的循环体(如 for、while)

  • continue :跳出本次循环,继续执行下次循环(如 for、while)

  • return :不仅可以退出循环,还能够返回 return 语句中的值,同时还可以结束当前的函数体内的代码

作业

1:创建一个计算两个数的最大值的函数。

	<script>
		function sum(first,second){
			var res
			if(first>second){
				res=first;
			}else if(first<second){
				res=second;
			}
			return res;
		} var res=sum(15,16);
		console.log(res);
	</script>

2:创建一个函数传递一个数组返回数组中的最大值,最小值。  


		<script>
         //4:创建一个函数传递一个数组返回数组中的最大值,最小值 
			function sum(){
			var arr = [10,5,6,9,4,1];
			var max = 0;
			var score=[];
			
			var min = arr[0];
			for(i=0;i<arr.length;i++){
				if(arr[i]>max){
					max = arr[i];
					}
				}
			for(j=0;j<arr.length;j++){
				if(min>arr[j]){
				    min=arr[j];
			}
			}
			score[score.length]=max;
				score[score.length]=min;
			   return score; 
			}
			var score1=sum();console.log(score1);
		</script>

3:封装一个函数:浏览器接收一个月份判断这个月份的天数。

	<script>
			function newday(){
			var month = prompt("请输入月份:");
			var day ;
			switch(Number(month)){
				case 1:day=31;break;
				case 2:day=28;break;
				case 3:day=31;break;
				case 4:day=30;break;
				case 5:day=31;break;
				case 6:day=30;break;
				case 7:day=31;break;
				case 8:day=31;break;
				case 9:day=30;break;
				case 10:day=31;break;
				case 11:day=30;break;
				case 12:day=31;break;
				default:
				console.log("输入错误");
			}
			return day;
			}
			var day=newday();
			console.log(day);
		</script>

4:制作一个简易的计算器,浏览器接收+,-*/、接收两个数,后计算结果。

	<script>
			// 7:制作一个简易的计算器,浏览器接收+,-*/、接收两个数,后计算结果。
		
			function getSum(){
			var first =Number(prompt("请输入数字1:")) ;
			var symbol = prompt("请输入运算符:");
			var second = Number(prompt("请输入第二个数:"));
			var res;
			
			if(symbol=="+"){
			res=first+second;
			}
			if(symbol=="-"){
			res=first-second;
			}
			if(symbol=="*"){
			res=first*second;
			}
			if(symbol=="/"){
			res=first/second;
			}
			return res;
			}
			var  res=getSum(); 
			console.log(res);
		</script>

\