1.求format“xxxx年xx月xx日 xx:xx”类型的两个日期天数差
var start = "2017年09月17日 13:51"; var end = "2017年09月20日 16:53"; function getTimeDifference(start,end){ var startDate = new Date(Date.parse(start.replace(/[年|月]/g, '/').replace(/日/g,''))); var endDate = new Date(Date.parse(end.replace(/[年|月]/g, '/').replace(/日/g,''))); var timeDif = endDate.getTime()-startDate.getTime(); var resultDay = timeDif/1000/60/60/24; return resultDay; }
2.Date的long类型获取方法
Date.now(); new Date().getTime(); new Date().valueOf();
返回自 1970-1-1 00:00:00 UTC (世界标准时间)至今所经过的毫秒数。
3.Date中的parse方法
Date.parse("xxxx/xx/xx");//获取该string类型日期的毫秒数(返回的是本地时间)
Date.parse("xxxx-xx-xx");//获取该string类型日期的毫秒数(返回自 1970-1-1 00:00:00 UTC (世界标准时间)至今所经过的毫秒数=本地时间+8小时)
new Date("xxxx/xx/xx");//获取该string类型日期的date值 new Date("xxxx/xx/xx").getTime();//获取该string类型日期的毫秒数
注:对于YYYY-MM-DD
形式的字符串,JavaScript引擎可能会将其当作ISO格式来解析,采用格林尼治时区作为计时标准;而对于其他格式的日期字符串,一律视为非ISO格式,采用本地时区作为计时标准。两者之间相差8小时。
new Date('2014-01-01') // Wed Jan 01 2014 08:00:00 GMT+0800 (CST) new Date('2014-1-1') // Wed Jan 01 2014 00:00:00 GMT+0800 (CST)