日期:2014-05-17  浏览次数:20871 次

关于js中数字相加变成字符串了
var h1=document.getElementById('h1').value;
var m1=document.getElementById('m1').value;
var s1=document.getElementById('s1').value;

 var today=new Date();
 var h=today.getHours();
 var m=today.getMinutes();
 var s=today.getSeconds();

var timesun1=(h*60*60)+(m*60)+(s);   //系统时间的总秒数
var timesun2=(h1*60*60)+(m1*60)+(s1);   //输入时间的总秒


timesun1的结果正常,timesun2最后一个s1就变成字符串加起来了。这是什么情况?

------解决方案--------------------
var timesun2=Number(h1*60*60)+Number(m1*60)+Number(s1)
------解决方案--------------------
可能跟弱类型有关,涉及到变量的加减法建议先用 number()或者parsefloat()方法转换