JavaScript,添加我在 parseInt 上一起使用的 2 个变量输出像一个字符串
JavaScript, Adding 2 variables which i have used parseInt on together outputs like a string
大家好,我对 parseInt 变量的行为类似于字符串有疑问。
很可能我做错了一些愚蠢的事情。
问题在代码的注释区域
function getNewDate()
{
var dateEntered = document.getElementById('Temp').value; //input got from a form
var daysEntered = document.getElementById('Temp1').value ; //input got from a form
var month = dateEntered.charAt(5)+dateEntered.charAt(6); //creating month
var date = dateEntered.charAt(8)+dateEntered.charAt(9); //date
var year = dateEntered.charAt(0)+dateEntered.charAt(1)+dateEntered.charAt(2)+dateEntered.charAt(3); //and year from input
var newDate = 0 ;
parseInt(month) ; //making the below variables integers for calculations
parseInt(daysEntered) ;
parseInt(date) ;
parseInt(newDate) ;
var newFullDate = "" ;
if(month == 01)
{
newDate = date + daysEntered ; //if i enter 01/01/2016 as the date
if(newDate > 31) //and 5 for days entered
{ //when i piece together the newFullDate
month = 02 ; //it outputs like 2016-01-015
date = 0 ;
daysEntered = newDate - 31 ;
}
else
{
newFullDate = ""+year +"-"+"01"+"-"+newDate ;
document.getElementsByName('output')[0].value= newFullDate;
}
}
您必须将 parseInt 中的值分配给变量。
month = parseInt(month) ;
daysEntered = parseInt(daysEntered) ;
date = parseInt(date) ;
newDate = parseInt(newDate) ;
parseInt()
不直接影响变量的值。它只是 returns 结果,因此您需要将其再次保存到变量中。
示例:
var month = dateEntered.charAt(5)+dateEntered.charAt(6);
month = parseInt(month);
或者您也可以在同一行同时执行这两项操作:
var month = parseInt(dateEntered.charAt(5)+dateEntered.charAt(6));
大家好,我对 parseInt 变量的行为类似于字符串有疑问。 很可能我做错了一些愚蠢的事情。 问题在代码的注释区域
function getNewDate()
{
var dateEntered = document.getElementById('Temp').value; //input got from a form
var daysEntered = document.getElementById('Temp1').value ; //input got from a form
var month = dateEntered.charAt(5)+dateEntered.charAt(6); //creating month
var date = dateEntered.charAt(8)+dateEntered.charAt(9); //date
var year = dateEntered.charAt(0)+dateEntered.charAt(1)+dateEntered.charAt(2)+dateEntered.charAt(3); //and year from input
var newDate = 0 ;
parseInt(month) ; //making the below variables integers for calculations
parseInt(daysEntered) ;
parseInt(date) ;
parseInt(newDate) ;
var newFullDate = "" ;
if(month == 01)
{
newDate = date + daysEntered ; //if i enter 01/01/2016 as the date
if(newDate > 31) //and 5 for days entered
{ //when i piece together the newFullDate
month = 02 ; //it outputs like 2016-01-015
date = 0 ;
daysEntered = newDate - 31 ;
}
else
{
newFullDate = ""+year +"-"+"01"+"-"+newDate ;
document.getElementsByName('output')[0].value= newFullDate;
}
}
您必须将 parseInt 中的值分配给变量。
month = parseInt(month) ;
daysEntered = parseInt(daysEntered) ;
date = parseInt(date) ;
newDate = parseInt(newDate) ;
parseInt()
不直接影响变量的值。它只是 returns 结果,因此您需要将其再次保存到变量中。
示例:
var month = dateEntered.charAt(5)+dateEntered.charAt(6);
month = parseInt(month);
或者您也可以在同一行同时执行这两项操作:
var month = parseInt(dateEntered.charAt(5)+dateEntered.charAt(6));