Sorry!上面有个错误,应该是
for(i=1;3>=i;i++)
{
Ts("2005年2月2日","2005年2月9日");
alert("离春节只有"+Ts+"天");
}

解决方案 »

  1.   

    这里就不说这个脚本的效率如何了(唉),只说你的错误吧。
    function Ts(Date1,Date2){

    var returnday=(date2-date1)/24/3600/1000;
    Ts=returnday;
    }
    你在函数体里用同名变量,不用说你的意思就是将该变量作为返回值了。这是vbs的用法,js函数返回值直接return就行了。你的例子里,将Ts=returnday 换成return returnday 就可以了。
    下面说为什么alert只执行了一次。在js里,函数与变量是作为同一类元素统一处理的。因为你在TS()函数里用了Ts=xx 一句,导致了执行这一句后,Ts就成了变量.当for循环执行到第二次,执行到Ts("2005年2月2日","2005年2月9日");这一句时,找不到函数,所以就报错了。
    别的不多说了。明白了这些,其余的问题,相信你自己能搞定。