是数字方式,不是字符方式
new Date(2011,1,1,1,1,1)
/字符转日期/StringToDate=function(DateStr){if(typeof DateStr=="undefined")return new Date();if(typeof DateStr=="date")return DateStr;var converted = Dateparse(DateStr);var myDate = new Date(converted);if(isNaN(myDate)){DateStr=DateStrreplace(/:/g,"-");DateStr=DateStrreplace(" ","-");DateStr=DateStrreplace("","-");var arys= DateStrsplit('-');switch(aryslength){case 7 : myDate = new Date(arys[0],--arys[1],arys[2],arys[3],arys[4],arys[5],arys[6]);break;case 6 : myDate = new Date(arys[0],--arys[1],arys[2],arys[3],arys[4],arys[5]);break;default: myDate = new Date(arys[0],--arys[1],arys[2]);break;};};return myDate;}
用这个转一下吧
<!DOCTYPE html>
<html>
<body>
<p>点击按钮计算 x</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo1"></p>
<p id="demo2"></p>
<script>
function myFunction()
{
y=5;
z=2;
x=z-y;
w=z+y;
documentgetElementById("demo1")innerHTML=x;
documentgetElementById("demo2")innerHTML=w;
}
</script>
</body>
</html>
经过测试发现参数类型的问题
var a=1368584724255;
new Date(a);//正确
var b='1368584724255';
new Date(b);//Invalid Date
b=parseInt(b,10);//转为整形
new Date(b);//正确count = setday - today;试一下改成
count = parseFloat(setday) - parseFloat(today);
如果还有问题,可以试一下,在count = setday - today;加上一句alert(setday+";"+today);定位一下是不是这两个变量出了问题var floats = "54212541212";//也可以是从input获取的值
alert(!isNaN(floats));//true
请注意,isNaN在数字为非数值型(字母或者符号)时为true;
有可能是你输入的数字是全角的〔.〕,这样可能会得不到正确结果的。
你可以顺便参考一下相关文档。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)