alert("当前日期为: " + mydate.toLocaleString());
-------------------------
下面代码中,我如果在增减天数文本框中提取字符.同样输入1,
我如果用parseint()处理,结果就是对的,否则结果就是错的.
为什么呢?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>日期计算 </TITLE>
<script language="javascript">
function dateprog1(myform) {
var mydate=new Date();
var vyear;
var vmonth;
var vdate;
var vday;
vyear=myform.txtyear.value;
vmonth=myform.txtmonth.value;
vmonth=vmonth-1;
vdate=myform.txtdate.value;
vday=myform.txtday.value;
//vday=parseInt(vday); //该句加与不加,为何差别这么大呢? if (!isNaN(vyear) && !isNaN(vmonth) && !isNaN(vdate) && !isNaN(vday))
{
vdate=myform.txtdate.value;
mydate.setFullYear(vyear);
mydate.setMonth(vmonth);
mydate.setDate(vdate);
alert("当前日期为: " + mydate.toLocaleString());
mydate.setDate(mydate.getDate()+vday);
alert("增减天数后日期为: " + mydate.toLocaleString());
//alert(typeof(123));
}
else
{
alert(typeof(vyear));
alert("请输入合法日期");
}
}
</script>
</HEAD> <BODY>
<form name="form1">
年份: <input type="text" name="txtyear" > <p>
月份: <input type="text" name="txtmonth" > <p>
日期: <input type="text" name="txtdate" > <p>
增减天数: <input type="text" name="txtday" > <p>
<input type="button" value="查看增减月份后的日期" onclick="dateprog1(this.form)">
</form>
</BODY>
</HTML>
-------------------------
下面代码中,我如果在增减天数文本框中提取字符.同样输入1,
我如果用parseint()处理,结果就是对的,否则结果就是错的.
为什么呢?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>日期计算 </TITLE>
<script language="javascript">
function dateprog1(myform) {
var mydate=new Date();
var vyear;
var vmonth;
var vdate;
var vday;
vyear=myform.txtyear.value;
vmonth=myform.txtmonth.value;
vmonth=vmonth-1;
vdate=myform.txtdate.value;
vday=myform.txtday.value;
//vday=parseInt(vday); //该句加与不加,为何差别这么大呢? if (!isNaN(vyear) && !isNaN(vmonth) && !isNaN(vdate) && !isNaN(vday))
{
vdate=myform.txtdate.value;
mydate.setFullYear(vyear);
mydate.setMonth(vmonth);
mydate.setDate(vdate);
alert("当前日期为: " + mydate.toLocaleString());
mydate.setDate(mydate.getDate()+vday);
alert("增减天数后日期为: " + mydate.toLocaleString());
//alert(typeof(123));
}
else
{
alert(typeof(vyear));
alert("请输入合法日期");
}
}
</script>
</HEAD> <BODY>
<form name="form1">
年份: <input type="text" name="txtyear" > <p>
月份: <input type="text" name="txtmonth" > <p>
日期: <input type="text" name="txtdate" > <p>
增减天数: <input type="text" name="txtday" > <p>
<input type="button" value="查看增减月份后的日期" onclick="dateprog1(this.form)">
</form>
</BODY>
</HTML>
字符串和数字相加的时候,数字会先变成字符串相加
<HTML>
<HEAD>
<TITLE>日期计算 </TITLE>
<script language="javascript">
function dateprog1(myform) {
var mydate=new Date();
var vyear;
var vmonth;
var vdate;
var vday;
vyear=myform.txtyear.value;
vmonth=myform.txtmonth.value;
vmonth=vmonth-1;
vdate=myform.txtdate.value;
vday=myform.txtday.value; alert(vday+1);/////////// vday=parseInt(vday); //该句加与不加,为何差别这么大呢? alert(vday+1);///////////
/*
if (!isNaN(vyear) && !isNaN(vmonth) && !isNaN(vdate) && !isNaN(vday))
{
vdate=myform.txtdate.value;
mydate.setFullYear(vyear);
mydate.setMonth(vmonth);
mydate.setDate(vdate);
alert("当前日期为: " + mydate.toLocaleString());
mydate.setDate(mydate.getDate()+vday);
alert("增减天数后日期为: " + mydate.toLocaleString());
//alert(typeof(123));
}
else
{
alert(typeof(vyear));
alert("请输入合法日期");
}
*/
}
</script>
</HEAD> <BODY>
<form name="form1">
年份: <input type="text" name="txtyear" > <p>
月份: <input type="text" name="txtmonth" > <p>
日期: <input type="text" name="txtdate" > <p>
增减天数: <input type="text" name="txtday" > <p>
<input type="button" value="查看增减月份后的日期" onclick="dateprog1(this.form)">
</form>
</BODY>
</HTML>