var timer = setInterval(function(){ alert(1); },1000) /* 上面的代码在浏览器中会自动执行 */ /* 下面的代码不会自动执行 */ var a = function(){ alert(2); }
同样是用变量来保存(不知道这种说法对不对),为啥上面的会自动执行,下面的不会呢?
setInterval 这个东西叫循环定时器, function(){ alert(1); } 叫函数声明 你纠结的是 2个地方都声明了一个函数,但是第一个执行了 可以这么理解,定时器相当于一个碎纸机,每次都要拿一张纸来碎掉,你的 function(){ alert(1); }就是声明了一张纸给碎纸机,所以碎纸机把它碎掉了,结果就是alert(1) 而 var a = function(){ alert(2); } 意思就是,你好我是一张纸,我叫a,你要是把我碎掉了(没有送给碎纸机就不会被碎掉),我能alert(2) 不知道好不好理解...
548k questions
547k answers
4 comments
86.3k users