封装格式化日期工具函数
2023-02-18 16:30:15 时间
后端服务器数据一般会返回时间戳,我们可以封装一个工具函数用来将时间戳转化为要展示的时间
utils.js
/**
* Parse the time to string
* @param {(Object|string|number)} time
* @param {string} cFormat
* @returns {string}
*/
function parseTime(time, cFormat) {
if (arguments.length === 0) {
return null
}
const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
let date
if (typeof time === 'object') {
date = time
} else {
if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
time = parseInt(time)
}
if ((typeof time === 'number') && (time.toString().length === 10)) {
time = time * 1000
}
date = new Date(time)
}
const formatObj = {
y: date.getFullYear(),
m: date.getMonth() + 1,
d: date.getDate(),
h: date.getHours(),
i: date.getMinutes(),
s: date.getSeconds(),
a: date.getDay()
}
const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
let value = formatObj[key]
// Note: getDay() returns 0 on Sunday
if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }
if (result.length > 0 && value < 10) {
value = '0' + value
}
return value || 0
})
return time_str
}
function formateDate() {
//获取年份
if(/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
}
let o = {
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'h+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()
};
for(let k in o) {
if(new RegExp(`(${k})`).test(fmt)) {
let str = o[k] + '';
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
}
}
return fmt
}
function padLeftZero(str) {
return ('00' + str).substr(str.length)
}
function showDate(value) {
//将时间戳转换成Date对象
const date = new Date(value * 1000);
//格式化date
return formateDate(date, 'yyyy-MM-dd hh:mm:ss')
}
相关文章
- “鼓浪屿元宇宙”,能否成为中国文旅产业的“升级样本”
- 萤石网络,难当「孤勇者」
- 构建汽车技术与装备交流平台,“中国汽研”开启汽车产业高质量发展新章
- 智能客服,还有多少AI泡沫?
- 一款翻译机背后的全球经济浪潮
- 把梦境变成一副画 清华未来实验室“脑机绘梦”亮相淘宝造物节
- 行业“卷不动”、市场“换不动”,家电赛道又跑回“老路”
- 十年新起点,九号公司“三路出击”:顶流代言、博士后上任、全球化布局
- 从智能门锁,看3D视觉的安全性突围
- 剑桥高材生归国创业,15年AI长跑终于迎来IPO
- 智能手表,不再只是手机品牌的“附属品”
- Acrobat 9安装步骤 PDF编辑器全版本下载
- “奶爸车”成功了,那“女性车”呢?
- 堆料,新能源汽车走上智能手机老路
- 荣耀的野望:智慧世界的“高端平民”
- Acrobat XI pdf编辑器全版本下载
- Acrobat DC 2022 PDF编辑器全版本下载
- 新能源车“乱战时代”,车企们在争什么?
- “国资云”和“国家云”能给市场带来怎样的变革?
- 雅迪、哈啰为什么都在做高端两轮电车