JS基础学习05(函数)
1、函数就是封装了一段可以被重复执行调用的代码块,目的:让大量代码重复使用
2、函数使用
(1)声明函数
function 函数名(){
函数体
}
function声明函数的关键字,全部小写;
函数就是做某件事情,函数名一般是动词;
函数不调用自己不执行;
(2)调用函数
语法: 函数名 ();
调用函数的时候千万不要忘记加小括号
3、函数的参数
function 函数名 (形参1,形参2…) {
代码块
}
调用:函数名 (实参1,实参2,…);
函数的参数可以有,也可以没有,个数不限
多个参数之间用逗号隔开;
形参可以不用声明,
4、函数形参和实参个数不匹配的问题
(1)如果实参的个数多于形参的个数,那么形参有多少个就只取多少个
(2)如果实参的个数小于形参的个数,那么返回的结果就是NaN
因为形参是 一个不用声明的变量,如果没有接收值,那么结果就是undefined
建议:尽量让实参的个数和形参的个数相匹配
在JS中,形参的默认值是undefined
5、函数的返回值
5.1、将函数将返回值返回给调用者,通过return语句实现
function 函数名(){
函数体
return 需要返回的结果
}
函数名();
注意:
(1)我们函数只是实现某种功能,最终的结果需要返回给函数的调用者,通过return实现
(2) 在实际开发里面,我们经常用一个变量来接受函数的返回结果
var result = getArrMax([1, 4, 7, 3, 86, 23, 90]); // 实参也要送一个数组过去
console.log(result);
(3)return是一个终止函数的语句,在函数里面只要运行到了return语句,return后面的语句就不再执行了
(4)return只能返回一个值,不管return里面有多少个值,只返回最后一个值,但是在return里面用数组就可以返回多个值了
(5)函数如果没有return,则返回undefined
6、arguments的使用
当我们不确定有多少个参数传递的时候,可以用arguments来获取。JS中,所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有实参。
arguments是按照数组的方式进行存储的,只不过它是伪数组
伪数组,不是真正意义上的数组
(1)具有数组的length属性
(2)按照索引的方式进行存储
(3)没有真正数组的一些方法pop(),push()等
注意:只有函数才有arguments对象
7、函数调用另外一个函数
8、第二种函数声明方式
var 变量名 = function (){ };
调用: 变量名();
eg:
var fun= function( ) {
函数体;
}
fun ( );
fun是变量名,不是函数名
函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值,而函数表达式里面存的是函数
练习题
1、书写一个函数,判断指定数据是否存在于指定数组中
function exist(num, arr) {
for (var i = 0; i < arr.length; i++) {
if (num == arr[i]) {
return true;
}
}
return false;
}
var result = exist(12, [34, 56, 78, 12, 35, 39]);
console.log(result);
2、请使用arguments完成函数getResult,实现得到输入的所有的数值中的最小值、最大值、平均数、总和等功能
function getResult() {
var max = arguments[0];
var min = arguments[0];
var adv = 0;
var sum = 0;
for (var i = 1; i <= arguments.length; i++) {
if (max < arguments[i]) {
max = arguments[i];
}
if (min > arguments[i]) {
min = arguments[i];
}
sum += arguments[i - 1];
}
adv = sum / arguments.length
return [max, min, sum, adv];
}
var result = getResult(12, 23, 45, 67);
console.log(result);
本文地址:https://blog.csdn.net/weixin_45607495/article/details/107304716
下一篇: 揭秘:朱高煦是不是明朝最惨的皇子?