js学习笔记(5)

  • 函数的概念
    函数:就是封装了一段可被重复调用执行的代码块,通过代码块可以实现大量代码的重复使用;
  • 函数的使用
    函数在使用的过程中分为两步:声明函数和调用函数;
    注意:函数不调用就不会执行;
<script>
		//1.声明函数
		// function 函数名(){

		// }

		function sayHi(){
			console.log('hi~');
		}
		//(1)function 声明函数的关键字  全部小写
		//(2)函数做某件事情,函数名一般是动词  
		//(3)函数不调用自己不执行
		//2.调用函数
		// 函数名()
		sayHi();
		//调用函数的时候千万不能忘记加()
</script>

函数的封装就是把一个或者多个功能通过函数的方式封装起来,对外只提供一个简单的函数接口

<script>
		function getSum(){
			var sum = 0;
			for(var i = 0; i <= 100; i++){
				sum += i;
			}
			console.log(sum);
		}
		getSum();
</script>
  • 函数的参数

在声明函数时,可以在函数名称后面的小括号中添加一些参数,这些参数被称为形参,而在调用该函数时,同样也需要传递相应的参数,这些参数称为实参。

(1)形参:形式上的参数,函数定义的时候,传递的参数,当前并不知道是什么;
(2)实参:实习上的参数,函数调用的时候,传递的参数,实参是传递给形参的;

注意点:多个参数用逗号隔开,形参可以看作是没有声明的变量;

函数形参实参个数不匹配:
如果实参个数和形参个数一致 则正常输出结果;
如果实参的个数大于形参的个数;只取到形参的个数
如果实参个数小于形参个数;多的形参定义为undefined,结果为NaN

<script>
		//函数形参实参个数匹配
		function getSum(num1, num2){
			console.log(num1 + num2);
		}
		//1.如果实参个数和形参个数一致  则正常输出结果
		getSum(1, 2);
		//2.如果实参的个数小于形参的个数
		getSum(1, 2, 3);
		//3.如果实参个数小于形参个数  多余的参数为undefined   
		//形参可以看作是不用声明的变量  num2  是一个变量但是没有接收值  就是undefined
		getSum(1);  //NaN
</script>
  • 函数的返回值
    有的时候,我们会希望函数将返回值返回给调用者,此时通过使用return语句就可以实现。
<script>
		function getArrMax(arr){//arr接收一个数组
			var max = arr[0];
			for(var i = 1; i < arr.length; i++){
				if(arr[i] > max){
					max = arr[i];
				}
			}
			return max;
		}
		//在我们实际开发里面,用变量来接收返回结果
		var re = getArrMax([5, 111, 1, 0]);
		console.log(re);
</script>

注意点:(1)return返回函数值,并且具有终止函数的功能,return后面的代码不会被执行;(2)return只会返回一个值,如果写了多个值,则返回最后一个值,多个值返回可以考虑用用数组;(3)函数有return,返回return后面的值,如果没有,就返回undefined;
break、continue、return的区别
break:结束当前循环(如:for、while);
continue:跳出本次循环,继续执行下次循环(如:for、while);
return:不仅可以退出循环,还能够返回return语句中的值,同时还可以结束当前的函数体内的代码;

  • arguments的使用

当我们不确定有多少个参数传递的时候,可以用arguments来获取,在JavaScript中,arguments实际上是它当前函数的一个内置对象,所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有实参。
arguments展示形式是一个伪数组,因此可以进行遍历,伪数组具有以下特点:
(1)具有length性质
(2)按索引方式存储数据
(3)不具有数组的push、pop等方法
(4)只有函数有arguments对象,而且是每个函数内置好的

  • 函数的两种声明方式
    1.利用函数关键字自定义函数(命名函数)
    2.函数表达式(匿名函数)
var 变量名 = function() {};
var fun = function() {
	console.log('我是函数表达式');
	fun();
	//fun是变量名  不是函数名
	//函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值
	//而函数表达式里面存的是函数
	//函数表达式也可以进行传递参数
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章