var date = new Date(); //Date() 方法若是接受到一个时间戳做为参数,返回该时间戳的对象,不然返回当前时间
var timeStr = parseInt(Date.parse(new Date())); 或者 var timeStr = (new Date()).getTime();
var date = new Date(timeStr);
60分 x 60秒 x 24小时 x 1000毫秒 = 86400 x 1000;函数
getDate() 得到当日的日期
getDay() 得到星期几
getHours():返回时间的小时部分。
getMinutes():返回时间的分钟部分。
getSeconds():返回时间的秒部分。
getMilliseconds():返回时间的毫秒部分。
getTime():返回自从1970年1月1日午夜以来的毫秒数。 this
setMonth(): 设置月份。
setDate(): 设置一个月的某一天。
setTime() :以毫秒设置 Date 对象。
setFullYear(year,mouth,day) : Date 对象中的年份(四位数字)spa
dateObject.setTime(millisec);
millisec: 要设置的日期和时间据 GMT 时间 1970 年 1 月 1 日午夜之间的毫秒数 ;
参数millisec能够为负值,用于表示1970年之前的日期。此方法没有返回值;主要用于设置时间对象;prototype
设置时间为 3天前 :code
function getDate(int) { var date = new Date(); var timeStr = parseInt(Date.parse(date)) + 86400 * 1000 * int; date.setTime(timeStr);//设置时间对象; return date; //注意写成 return date.setTime(timeStr) 是错的;会返回 timeStr; } var date = getDate(-3);
上面的方法也能够写成这样:orm
function getDate(int) { var date = new Date(); var timeStr = parseInt(Date.parse(date)) + 86400 * 1000 * int; return new Date(timeStr) // Date() 接受一个时间戳参数,返回设置时间后的时间对象; } var date = getDate(-3);
还能够写成这样(推荐):对象
function getDate(int) { var date = new Date(); date.setDate(date.getDate()+int) return date } var date = getDate(-3); //注意:若是增长5天后进入另一个月或一年,Date对象会自动处理的。
经过利用 setFullYear 中 若是day 设置为 0 回返回 上个月的最后一天 ;能够求得任意一个月有多少天ip
function getDaysNum(year,mouth) { var date = new Date(); date.setFullYear(year,mouth,0); var days = date.getDate(); return days; } getDaysNum(2017,2) //28
参考连接 http://www.w3school.com.cn/js...get
一般咱们看到的时间格式并非时间对象默认的格式(Mon Dec 25 2017 09:34:24 GMT+0800 (中国标准时间));
而是带中文 或者 横线分隔;所以咱们须要写一个 Format 函数;直接看某大神的代码吧;it
Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); //在循环中,经过正则匹配格式,而后替换内容 for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; } 调用: var time1 = new Date().Format("yyyy-MM-dd"); //2017-12-26 var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss"); //2017-12-26 09:33:30