我们日常在开发一个项目过程中,经常需要用到日期格式化,然后我们第一反应可能就是无脑引入dayjs完事。
“我又不傻,有开源方案不用。”
然而,如果你只是用其中一个方法,比如format。你把整个dayjs库import进项目,毕竟整个包的大小未压缩有好几百K,对性能有些浪费吧。
这个时候,你又不想自己写一个格式化的format,又想有dayjs().format的功能,何必不试试 ChatGPT 呢。
function dayjs(date) {
const d = date ? new Date(date) : new Date();
const year = d.getFullYear();
const month = d.getMonth() + 1;
const day = d.getDate();
const hour = d.getHours();
const minute = d.getMinutes();
const second = d.getSeconds();
return {
format(formatStr) {
return formatStr
.replace(/YYYY/g, year)
.replace(/MM/g, month.toString().padStart(2, '0'))
.replace(/DD/g, day.toString().padStart(2, '0'))
.replace(/HH/g, hour.toString().padStart(2, '0'))
.replace(/mm/g, minute.toString().padStart(2, '0'))
.replace(/ss/g, second.toString().padStart(2, '0'));
}
};
}