JavaScript中的匿名函数及函数的闭包

function forTimeout(x, y){
    alert(x + y);
}
function delay(x , y  , time){
    setTimeout('forTimeout(' +  x + ',' +  y + ')' , time);    
}
/**
 * 上面的delay函数十分难以阅读,也不容易编写,但如果使用闭包就可以让代码更加清晰
 * function delay(x , y , time){
 *     setTimeout(
 *         function(){
 *             forTimeout(x , y) 
 *         }          
 *     , time);   
 * }
 */

可以这样理解,声明匿名函数的代码就是一段字符串,但是这段字符串不是普通的字符串。

全文:http://www.cnblogs.com/rainman/archive/2009/05/04/1448899.html //p.s.学习javascript的难处就是有多样的代码可以实现同一目的,在VC++里面说的就是多态性。
posted @ 2016-04-25 14:26  stma  阅读(101)  评论(0)    收藏  举报