js 格式化字符串为时间yyyy-MM-dd

JavaScript060

js 格式化字符串为时间yyyy-MM-dd,第1张

参考代码如下:

var s='2017-05-24 12:33:22''定义日期字符串

s=s.replace(/ \d+(:\d+){2}/,'')'正则过滤后面的时间,只显示年月日

alert(s) '弹出日期

效果图如下:

定义和用法

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

返回值

一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。

字符串转日期、日期转字符串

// 2014-02-25

/**

* 字符串转时间(yyyy-MM-dd HH:mm:ss)

* result (分钟)

*/

stringToDate : function(fDate){

var fullDate = fDate.split("-")

return new Date(fullDate[0], fullDate[1]-1, fullDate[2], 0, 0, 0)

}

/**

* 格式化日期

* @param date 日期

* @param format 格式化样式,例如yyyy-MM-dd HH:mm:ss E

* @return 格式化后的金额

*/

formatDate : function (date, format) {

var v = ""

if (typeof date == "string" || typeof date != "object") {

return

}

var year = date.getFullYear()

var month = date.getMonth()+1

var day = date.getDate()

var hour = date.getHours()

var minute = date.getMinutes()

var second = date.getSeconds()

var weekDay = date.getDay()

var ms = date.getMilliseconds()

var weekDayString = ""

if (weekDay == 1) {

weekDayString = "星期一"

} else if (weekDay == 2) {

weekDayString = "星期二"

} else if (weekDay == 3) {

weekDayString = "星期三"

} else if (weekDay == 4) {

weekDayString = "星期四"

} else if (weekDay == 5) {

weekDayString = "星期五"

} else if (weekDay == 6) {

weekDayString = "星期六"

} else if (weekDay == 7) {

weekDayString = "星期日"

}

v = format

//Year

v = v.replace(/yyyy/g, year)

v = v.replace(/YYYY/g, year)

v = v.replace(/yy/g, (year+"").substring(2,4))

v = v.replace(/YY/g, (year+"").substring(2,4))

//Month

var monthStr = ("0"+month)

v = v.replace(/MM/g, monthStr.substring(monthStr.length-2))

//Day

var dayStr = ("0"+day)

v = v.replace(/dd/g, dayStr.substring(dayStr.length-2))

//hour

var hourStr = ("0"+hour)

v = v.replace(/HH/g, hourStr.substring(hourStr.length-2))

v = v.replace(/hh/g, hourStr.substring(hourStr.length-2))

//minute

var minuteStr = ("0"+minute)

v = v.replace(/mm/g, minuteStr.substring(minuteStr.length-2))

//Millisecond

v = v.replace(/sss/g, ms)

v = v.replace(/SSS/g, ms)

//second

var secondStr = ("0"+second)

v = v.replace(/ss/g, secondStr.substring(secondStr.length-2))

v = v.replace(/SS/g, secondStr.substring(secondStr.length-2))

//weekDay

v = v.replace(/E/g, weekDayString)

return v

}

// dateValue=2014-02-28

var cDate = _STAGE.stringToDate(dateValue)

cDate.setDate(cDate.getDate()+1)

currentDate = jAnXin.util.formatDate(cDate, "yyyy-MM-dd")

console.log(currentDate )// 2014-03-01

正则替换日期并格式化日期

转数字型:

ar ttDate = "2013年12月20日 14:20:20"

ttDate = ttDate.replace(/[^0-9]/mg, '').match(/.{8}/)

alert(ttDate)

结果:

20131220

转日期型:

var ttDate = "2013年12月20日 14:20:20"

ttDate = ttDate.match(/\d{4}.\d{1,2}.\d{1,2}/mg).toString()

ttDate = ttDate.replace(/[^0-9]/mg, '-')

alert(ttDate)

结果:2013-12-20

超级正则替换:

var ttDate = "2013年12月20日 14:20:20"

ttDate = ttDate.replace(/(\d{4}).(\d{1,2}).(\d{1,2}).+/mg, '$1-$2-$3')

alert(ttDate)

结果:

2013-12-20

var d = new Date("2016-09-18")

随便字符串形式的日期变量, 使用上面方式传入js的Date对象,你就能使用d这个变量进行任何的日期操作了,从字符串转换成js日期的过程由js自动帮你完成