自定义一个函数:
1 function myFunc(){
2 //do somthing;
3 }
4
5 function myFunc2(data){
6 do something;
7 }
调用第一个函数这三种写法:
setInterval(myFunc,1000);
setInterval("myFunc()",1000);
第三种是匿名函数,也就是说不要自定义了:setInterval(function(){...;},1000);
而调用第二个函数显然第一种调用法就失效了,因为没法送参数,除非你把参数都默认了,不然只有在调用的时候把参数送进去:
setInterval("myfunc2('aaa')",1000);
假如参数是一个元素/对象的话呢?以jQuery为例:
setInterval("myfunc2($('#txtmsg'))",1000);
原生js当然一样:
setInterval("myFunc2(getElementById('txtmsg'))",1000);
====补充
经反复实验,如下用法均可行:

1 <script type="text/javascript">
2 var a="3",b="4", c;
3 onload=function(){c=document.getElementById('t1').value;}
4 function getc(){return document.getElementById('t1').value;}
5 function test(a,b){alert(a+b);}
6 function test2(a){alert(a.value);}
7 // setTimeout(test(a,b),1000);
8 // setTimeout(test(3,"4"),1000);
9 // setTimeout("test(a,b)",1000);
10 // setTimeout("test(document.getElementById('t1').value,2)",1000);
11 // setTimeout(test(document.getElementById('t1').value,2),1000);//错误
12 //setTimeout("test(c,b)",1000);
13 // setTimeout(test(c,b),1000);//提示C未定义
14 // setTimeout(test(getc(),b),1000);//错误
15 // setTimeout("test(getc(),b)",1000);
16 // setTimeout("test2(document.getElementById('t1'))",1000);
17 //setTimeout(test2(document.getElementById('t1')),1000);//错误
18 </script>
上例中,凡是出错的地方,全在传递对象的时候