JavaScript函数
函数:函数就是封装了一段可以被重复执行调用的代码块
函数的使用分为两步:声明和调用
声明函数:
function 函数名 () {
// 函数体
}
function为声明函数的关键字
注:函数一般都是做某件事的,所以建议函数名一般包含动词
调用函数:(函数不调用自己不会执行)
函数名();
调用函数直接使用函数名();即可。
函数的参数
函数的参数:函数有了参数才可以实现执行不同的代码块以及输出不同的结果,函数的参数分为形参和实参
形参:写在声明函数的小括号里的参数,意为形式上的参数
实参:写在调用函数的小括号里的参数,意为实际上的参数
函数的实参和形参在数量匹配上的三种关系及函数执行输出情况:
<script>
// 声明一个函数
// getSum()用于输出两个数的和
function getSum (one, tow) { // 形参可以看做是没有声明的变量
var sum = parseFloat(one) + parseFloat(tow); // 将形参的数据类型转换为数字型
return one + '+' + tow + '=' + sum; // return 将函数执行的结果返还给调用者
}
// 调用函数时实参和形参数量上的三种情况:
// 1.实参和形参数量相等
console.log(getSum(1, 4)); // 正常调用函数并执行输出结果
// 2.实参的数量多于形参
console.log(getSum(1, 4, 3)); // 正常调用函数并执行输出结果,多出的实参不会被使用
// 3.实参的数量少于形参
console.log(getSum(1)); // 函数能正常调用执行但和会输出 NaN,函数中没有匹配到实参的形参值是 undefined
</script>
执行代码截图:
可以看出形参和实参的数量不一样时程序也能正常执行并输出,但是为了避免不可预知的错误,建议函数的实参和形参数量上相匹配。
PS.函数的内置对象arguments可以接收并存储实参传递的值,详情直通车:JavaScript-函数内置arguments对象
小结:
- 函数可以带参数也可以不带参数
- 声明函数的时候,函数名括号里面的是形参,形参的默认值是undefined
- 调用函数的时候,函数名括号里面的是实参
- 多个参数间用英文逗号分隔
- 实参的个数可以和形参个数不匹配,但避免结果的不可预知,我们尽量要匹配