写H5的时候经常遇到需要格式化时间字符串, 今天抽空把一种比较全的写法记录下
/**
* @param {type} example:'YYmm'
* @param {divide} example:'String'
* @param {value} example:'2021-07-13 11:33:07'
* @return {String,array}
*/
const toFormat = function (value, type, divide) {
value = value ? value.replace((/-/g, "/")) : ''
var date = value ? new Date(value) : new Date();
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var h = date.getHours();
h = h < 10 ? ('0' + h) : h;
var minute = date.getMinutes();
var second = date.getSeconds();
minute = minute < 10 ? ('0' + minute) : minute;
second = second < 10 ? ('0' + second) : second;
if (type == 'YY') {
return y + (divide ? '' : '年')
} else if (type == 'YYmm') {
return y + (divide ? divide : '年') + m + (divide ? '' : '月')
} else if (type == 'YYmmdd') {
return y + (divide ? divide : '年') + m + (divide ? divide : '月') + d + (divide ? '' : '日')
} else if (type == 'YYmmdd HH') {
return y + (divide ? divide : '年') + m + (divide ? divide : '月') + d + (divide ? '' : '日') + ' ' + h + (divide ? '' : '时')
} else if (type == 'YYmmdd HHmm') {
return y + (divide ? divide : '年') + m + (divide ? divide : '月') + d + (divide ? '' : '日') + ' ' + h + (divide ? ':' : '时') + minute + (divide ? '' : '分')
} else if (type == 'YYmmdd HHmmss') {
return y + (divide ? divide : '年') + m + (divide ? divide : '月') + d + (divide ? '' : '日') + ' ' + h + (divide ? ':' : '时') + minute + (divide ? ':' : '分') + second + (divide ? '' : '秒')
} else if (type == 'mmdd') {
return m + (divide ? divide : '月') + d + (divide ? '' : '日')
} else {
return [y, n, d, h, minute, second]
}
}