1.抛出几个问题
1.1. 什么是函数?
* 实现特定功能的n条语句的封装体
* 只有函数是可以执行的, 其它类型的数据不能执行
1.2. 为什么要用函数?
* 提高代码复用
* 便于阅读交流
1.3. 如何定义函数?
* 函数声明
* 表达式
1.4. 如何调用(执行)函数?
* test(): 直接调用
* obj.test(): 通过对象调用
* new test(): new调用
* test.call/apply(obj): 临时让test成为obj的方法进行调用
var obj = {}
function test2 () {
this.xxx = 'call调用'
}
test2.call(obj)
console.log(obj.xxx)
1.5什么函数才是回调函数?
1). 你定义的
2). 你没有调
3). 但最终它执行了(在某个时刻或某个条件下)
1.6常见的回调函数?
* dom事件回调函数 ==>发生事件的dom元素
* 定时器回调函数 ===>window
* ajax请求回调函数
* 生命周期回调函数
document.getElementById('btn').onclick = function () {
alert(this.innerHTML)
}
setTimeout(function () {
alert("'it's time"+this)
}, 2000)