1.什么是函数
- 实现特定功能的n条语句的封装体
- 只有函数是可以执行的,其他类型的数据不能执行
2.为什么要用函数
- 提高代码复用
- 便于阅读交流
3.如何定义函数
- 函数声明
- 表达式
4.如何调用(执行)函数
- test():直接调用
- obj.test():通过对象调用
- new test():new调用
- test.call/apply(obj):临时让test成为obj的方法进行调用
相关代码
function showInfo(age) {
if (age < 18) {
console.log("未成年,再等等");
} else if (age > 60) {
console.log('算了吧');
} else {
console.log("刚好!");
}
}
showInfo(17)
showInfo(18)
showInfo(65)
function fn1() { // 函数声明
console.log('fn1()');
}
var fn2 = function() { // 表达式
console.log('fn2()');
}
fn1()
fn2()
var obj = {}
function test2() {
this.xxx = 'abc'
}
// obj.test2() 不能直接调用,因为obj对象没有test2()这个方法
test2.call(obj) // obj.test2() 可以让一个函数成为指定任意对象的方法进行调用
console.log(obj.xxx); // abc
5.回调函数
(1)什么函数才是回调函数
- 你定义的
- 你没有调用
- 但最终执行了
(2)常见的回调函数
- dom事件回调函数
- 定时器回调函数
- ajax请求回调函数
- 生命周期回调函数