var timestamp1 = new Date(2014,11,05,21,50,00).valueOf();
var timestamp2 = new Date().valueOf(); //当前时间为2014-11-5 22:11
var t=parseInt(timestampend1)-parseInt(timestamp2); 相减值为什么是大于0的
用13年12年减是小于0 ,14年10月也小于0, 就是用前几分钟的时间减现在的时间会大于0的
在js中,可以对两个时间戳进行相减,使用if语句判断结果,从而实现时间戳的比较。具体步骤如下:
1、在test.html文件内,命名为test.html,用于讲解js时间戳怎么比较。
2、在test.html文件内,在js标签内创建一个pan()函数,函数有两个参数,分别st1,st2。
3、在pan()函数内,分别将两个时间使用new Date()转换为时间对象,保存在t1,t2变量中。
4、在pan()函数内,将两个时间对象分别利用getTime()方法转换为时间戳,分别保存在变量tt1,tt2变量中。
5、在pan()函数内,将两个时间戳相减,差值保存在res变量中。
6、在pan()函数内,使用if语句对res进行判断,如果res等于0,提示“两个时间相等”,如果res大于0,提示“t1时间大于t2时间”,如果不符合上面两种情况,则提示“t2时间大于t1时间”。
7、在pan()函数外,创建两个时间变量,并调用pan()函数进行判断。
8、在浏览器打开test.html文件,查看判断的结果。
比较timestamp1和timestamp2很简单
var timestamp1 = new Date('2014-11-5 21:50:00'), timestamp2 = new Date();如果相减大于0,则1比2时间大(晚)
如果相减小于0,则1比2时间小(早)
相减的值除以1000就是2个时间相差的秒数
你的代码出错,可能的原因是timestamp1的date参数没写对
我觉得应该是new Date('2014-11-5 21:50:00');
参数是字符串
timestamp2不需要用valueof吧,我没测试过,反正保证timestamp1和timestamp2是时间类型就行
本回答被提问者采纳