
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
format-instant
Advanced tools
一款时间格式化的插件,目前只在公司内部测试使用。
npm install format-instant -S
import formatInstant from "format-instant"
formatInstant().format("YYYY-MM-DD HH:mm:ss"); //2023-09-25 10:25:30
formatInstant("2023-09-25").add(5,"days").format("YYYY-MM-DD HH:mm:ss"); //2023-09-30 15:30:25
| 格式代码 | 说明 | 返回值 |
|---|---|---|
| YY | 两位数字表示的年份 | 如:23 或 15 |
| YYYY | 四位数字完整表示的年份 | 如:2023 或 2015 |
| M | 数字表示的月份,没有前导零 | 1到12 |
| MM | 数字表示的月份,有前导零 | 01到12 |
| MMM | 三个字母缩写表示的月份 | Jan到Dec |
| MMMM | 月份,完整的文本格式 | January到December |
| D | 月份中的第几天,没有前导零 | 1到31 |
| DD | 月份中的第几天,有前导零 | 01到31 |
| DI | 月份中的第几天 | 一月到十二月 |
| DN | 月份中的第几天 | 1月到12月 |
| d | 星期中的第几天,数字表示 | 0到6,0表示周日,6表示周六 |
| dd | 星期中的第几天 | 星期日、星期一到星期六 |
| ddd | 三个字母表示星期中的第几天 | Sun到Sat |
| dddd | 星期几,完整的星期文本 | 从Sunday到Saturday |
| dt | 星期中的第几天 | 周日、周一到周六 |
| di | 星期中的第几天 | 日、一到六 |
| HH | 小时,24小时制,有前导零 | 00到23 |
| H | 小时,24小时制,无前导零 | 0到23 |
| hh | 小时,12小时制,有前导零 | 00到12 |
| h | 小时,12小时制,无前导零 | 0到12 |
| mm | 有前导零的分钟数 | 00到59 |
| m | 没有前导零的分钟数 | 0到59 |
| ss | 有前导零的秒数 | 01到59 |
| s | 没有前导零的秒数 | 1到59 |
| A | 大写的AM PM | AM PM |
| Q | 季度 | 1到4 |
formatInstant().format('YYYY年MM月DD日')
formatInstant().format('YYYY-MM-DD')
formatInstant().format('HH时mm分ss秒')
formatInstant().format('hh:mm:ss a')
formatInstant("2011-10-31").fromNow(); // 8 年前
formatInstant("20120620").fromNow(); // 7 年前
formatInstant().startOf('date').fromNow(); // 20 小时前
formatInstant().endOf('date').fromNow(); // 4 小时内
formatInstant 参数 'YYYY-MM-DD'、'YYYY-MM' 'YYYY/MM/DD' 'YYYY/MM' 'YYYY.MM.DD' 'YYYY.MM' 'YYYYMMDD' 'YYYYMM' 'HH:mm:ss.SSSS' 'HH:mm:ss,SSSS' 'HH:mm:ss' 'HH:mm' formatInstant() toArray或toObject返回的数组和对象
startOf 获取当前年、月、日等第一天0时0分0秒 参数 "year" "month" "date" "week" "isoWeek"
endOf 获取当前年、月、日等最后一天23时59分59秒 参数 "year" "month" "date" "week" "isoWeek"
formatInstant().subtract(10, 'dates').calendar(); // 2019年5月14日
formatInstant().subtract(6, 'dates').calendar(); // 上周六晚上7点49
formatInstant().subtract(3, 'dates').calendar(); // 本周二晚上7点49
formatInstant().subtract(1, 'dates').calendar(); // 昨天晚上7点49分
formatInstant().calendar(); // 今天晚上7点49分
formatInstant().add(1, 'dates').calendar(); // 明天晚上7点49分
formatInstant().add(3, 'dates').calendar(); // 下周一晚上7点49
formatInstant().add(10, 'dates').calendar(); // 2019年6月3日
formatInstant().get("years"); //2023
add 参数 "years" "months" "dates" "hours" "minutes" "seconds"
get 参数 "years" "months" "dates" "hours" "minutes" "seconds" "weeks" "isoWeek"
subtract 是减去的意思 参数 "years" "months" "dates" "hours" "minutes" "seconds"
formatInstant().formatFast('L'); // 2019-05-24
formatInstant().formatFast('l'); // 2019-05-24
formatInstant().formatFast('LL'); // 2019年5月24日
formatInstant().formatFast('ll'); // 2019年5月24日
formatInstant().formatFast('LLL'); // 2019年5月24日晚上7点50分
formatInstant().formatFast('lll'); // 2019年5月24日晚上7点50分
formatInstant().formatFast('LLLL'); // 2019年5月24日星期五晚上7点50分
formatInstant().formatFast('llll'); // 2019年5月24日星期五晚上7点50分
var c = formatInstant("2008-09");
var d = formatInstant("2007-00");
console.log(c.diff(d, 'years')); // 1
console.log(c.diff(d, 'years', true)) // 1.75
var e = formatInstant();
var f = formatInstant().add(1, 'seconds');
console.log(e.diff(f)) // -1000 (毫秒)
console.log(f.diff(e)) // 1000 (毫秒)
diff 参数 除了"years" 还有 "months" "dates" "hours" "minutes" "seconds" "weeks"
formatInstant().year(); // 当前年
formatInstant().month(); // 当前月
formatInstant().date(); // 当前日
formatInstant().hour(); // 当前小时
formatInstant().minute(); // 当前分钟
formatInstant().second(); // 当前秒
formatInstant().week(); // 0-6 0周日 6周末 开始日是周日
formatInstant().isoWeek(); // 1-6 开始日是周一
formatInstant().toArray();//[2023,10,25,10,26,30]年月日时分秒
formatInstant().toObject();//{years:2023,months:10,dates:25,hours:10,minutes:26,seconds:30}年月日时分秒
formatInstant().daysInMonth();//获取当前月的总天数
formatInstant().valueof();//获取毫秒(时间戳)
formatInstant().unix();//获取秒(时间戳)
FAQs
We found that format-instant demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.