目录
1.函数的概述
什么是函数
把特点的代码片段,抽取成为一个独立运行的实例,就是函数
2.可以把函数理解为一些工具
比如冰箱:作用是冷藏食物
洗衣机:洗衣服
这些都是可以重复使用的,方便,不用知道原理,
3.函数的特点
1, 函数可以在同一个程序或其他程序中多次重复使用(通过函数名调用
2, 使程序变得更简短而清晰 , 提高可读性
3, 有利于程序维护
4.函数的分类
1)内置函数(又叫系统函数)
alert(123) 提示框
var res = confirm("你确定要删除吗?");
console.log(res);
parseInt()
parseFloat()
Number()
Booelan();
toString();
console.log()
Math.max()
Math.min()
Math.pow()
2)自定义函数
//语法 function 功能
//定义
// function 函数名称(参数1,参数2,...){
// //逻辑代码
// return 结果
// }
//执行调用
// 函数名称+()
// 函数名称
例:
function calc (num1, num2) {
var res = num1 + num2;
return res;
}
var result = calc(10, 20)
console.log(result);
5.作用域、作用域链
作用的范围:全局与局部
全局:函数外声明,在函数内有也可以使用
局部:函数内声明,只能在函数内部使用
作用域链:
优先在局部查找,如果局部没有就向外部查找,这个查找的'过程',就叫做作用域链
function fn () {
//a局部,它前面有var
//b全局,它没有var,它有=符号
var a = b = 20
}
fn()
// console.log(a); //? a is not defined
console.log(b); //10
6.arguments
arguments 是什么?
它是一个伪数组,它只能在函数内部使用
用于动态接受实参,它有一个length属性,可以通过[下标]的方式取值
下标从0开始
function calc () {
var arg = arguments;
var res = 0;
for (var i = 0; i < arg.length; i++) {
res += arg[i];
}
return res;
}
console.log(calc(10, 20));
console.log(calc(10, 20, 30));
console.log(calc(10, 20, 30, 40));
console.log(calc(10, 20));
console.log(calc(10));