一、函数
1、函数的两种声明方式
a、自定义函数方式(命名函数)
利用函数关键字 function 自定义函数方式
// 声明定义方式
function fn() {...}
// 调用
fn();
- 因为有名字,所以也被称为命名函数
- 调用函数的代码既可以放到声明函数的前面,也可以放在声明函数的后面
b、函数表达式方式(匿名函数)
利用函数表达式方式的写法如下:
// 这是函数表达式写法,匿名函数后面跟分号结束
var fn = function(){...};
// 调用的方式,函数调用必须写到函数体下面
fn();
- 因为函数没有名字,所以也被称为匿名函数
- 这个fn 里面存储的是一个函数
- 函数表达式方式原理跟声明变量方式是一致的
- 函数调用的代码必须写到函数体后面
2、函数的作用
1.实现特定功能
2.让代码可以复用
3、函数的参数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// 无参函数
// function show()
// {
// alert("hello")
// }
// show()
// 有参函数
// function getSum(num1,num2) //形式参数,简称形参
// {
// alert(num1+num2)
// }
// getSum(3,4) //实际参数,简称实参
// getSum(7,8)//传参方向 实参->形参
//js比较宽松,实参的个数可以不等于形参个数
function getSum(num1,num2)
{
alert(num2)
alert(num1+num2)
}
// getSum(7,8) //实参个数=形参个数 正常使用
// getSum(7) //实参个数<形参个数 7->num1 num->undefined 没有给的参数值,会是undefined
getSum(7,8,9) //实参个数>形参个数 只取形参需要的个数
</script>
</body>
</html>
4、arguments
- 当不确定有多少个参数传递的时候,可以用 arguments 来获取。
- JavaScript 中,arguments实际上它是当前函数的一个内置对象。
- 所有函数都内置了一个 arguments 对象,arguments 对象中存储了传递的所有实参。
- arguments展示形式是一个伪数组,因此可以进行遍历。
- 伪数组具有以下特点:
- 具有 length 属性
- 按索引方式储存数据
- 不具有数组的 push , pop 等方法
- 注意:在函数内部使用该对象,用此对象获取函数调用时传的实参。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
//arguments 参数
//封装一个求和函数,但是参的个数不固定
function getSum()
{
var sum = 0
//每个函数都会有一个arguments. 它指的是传入所有参数
//console.log( arguments )
for (var index in arguments) //遍历伪数组
{
sum += arguments[index]
}
alert( sum )
}
getSum(3,4)
getSum(5,6,7,8)
getSum(5,6,7,8,9)
</script>
</body>
</html>