1.string 转 date
JS的Date对象有四种创建方式:
var d = new Date(); //直接获得当前日期
var d = new Date(milliseconds); //传入日期的毫秒数
var d = new Date(dateString); // 传入时间字符串,经过我的验证,格式为:"2018-03-15"
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);//分别按年、月、日等逗号隔开传入
/**
*
* 如果想将日期字符串格式化,需先将其转换为日期类型Date
* 以下是提供几种常用的
*
* var da = new Date().format('yyyy-MM-dd hh:mm:ss'); //将日期格式串,转换成先要的格式
* alert("格式化日期类型 \n" + new Date() + "\n 为字符串:" + da);
*
* var str = "2014/01/01 01:01:01" // yyyy/mm/dd这种格式转化成日期对像可以用new Date(str);在转换成指定格式
* alert("格式化字符串\n" + str + " 为日期格式 \n" + new Date(str).format('yyyy-MM-dd hh:mm:ss'))
*
*
* var str1 = "2014-12-31 00:55:55" // yyyy-mm-dd这种格式的字符串转化成日期对象可以用new Date(Date.parse(str.replace(/-/g,"/")));
* alert("格式化字符串\n" + str1 + " 为日期格式 \n" + new Date(Date.parse(str1.replace(/-/g, "/"))).format('yyyy-MM-dd hh:mm:ss'))
*
*
* 日期加月
* 先将字符转换成Date类型才可以使用
* var str1 = "2014-12-31 00:55:55" // yyyy-mm-dd这种格式的字符串转化成日期对象可以用new Date(Date.parse(str.replace(/-/g,"/")));
* 例如 var saveDate = new Date(Date.parse(str1.replace(/-/g, "/"))).addMonth(5)
* addMonth(月数) 必须为整数
*/
2.data 转 string
Date.prototype.format = function(format){
var o = {
"M+" : this.getMonth()+1, //month
"d+" : this.getDate(), //day
"H+" : this.getHours(), //hour
"m+" : this.getMinutes(), //minute
"s+" : this.getSeconds(), //second
"q+" : Math.floor((this.getMonth()+3)/3), //quarter
"S" : this.getMilliseconds() //millisecond
}
if(/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o) {
if(new RegExp("("+ k +")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
}
}
return format;
}
var string=(new Date()).format("yyyy-MM-dd HH:mm:ss")