koishi-plugin-genshin
Version:
Genshin Impact player data fetcher and gacha simulator for Koishi.js
43 lines (40 loc) • 1.02 kB
JavaScript
const { Time } = require('koishi-core')
/**
* @param {string} fmt
* @param {Date?} date
* @returns
*/
module.exports.dateFormat = function(fmt, date) {
date = date || new Date()
const o = {
'M+': date.getMonth() + 1, //月份
'd+': date.getDate(), //日
'h+': date.getHours(), //小时
'm+': date.getMinutes(), //分
's+': date.getSeconds(), //秒
'q+': Math.floor((date.getMonth() + 3) / 3), //季度
S: date.getMilliseconds(), //毫秒
}
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(
RegExp.$1,
(date.getFullYear() + '').substr(4 - RegExp.$1.length)
)
}
for (let k in o) {
if (new RegExp('(' + k + ')').test(fmt)) {
fmt = fmt.replace(
RegExp.$1,
RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length)
)
}
}
return fmt
}
/**
* @param {number} time
* @returns
*/
module.exports.getTimeLeft = function(time) {
return Time.formatTime(time - Date.now())
}