JavaScript随笔——回调函数
在JavaScript 中,函数是比较奇怪的,但它确确实实是对象。确切地说,函数是用 function 构造函数创建的 function 对象。
function 对象包含一个字符串,字符串包含函数的 JavaScript代码。
看下面代码:
只写变量名 say 返回的将会是 say方法本身,以字符串的形式表现出来。
而在变量名后加 () 返回的就会使 say方法 调用后的结果。
在JavaScript中,函数可以作为参数被传递
1. 将say方法作为参数传递给 execute方法
2. 直接将匿名函数作为参数传递给 execute方法
2、 回调函数的参数在调用回调函数内部创建
回调是闭包的简单使用,能访问外层定义的变量。
注意 回调函数的 this 指向!
例子:
直接调用 obj. fun(); 输出10;
当我们把这个方法当做参数传递给 con方法之后,调用 callback的是 window, this指向 window,所以输出的是100。
回调函数的好处:
回调函数可以避免重复代码、加强代码可维护性、可读性,一般用在异步编程、事件监听处理、定时器计时器等。