Skip to content

formatDate / timestampToTime

تاریخ را با الگویی از نشانه‌ها می‌آراید.

API

formatDate(value?, pattern?)

پارامترتوضیحنوعپیش‌فرض
valueبرچسب زمانی، رشتهٔ تاریخ یا Date؛ برای اکنون آن را ندهیدnumber | string | Dateاکنون
patternالگوی نشانه‌هاstring'YYYY-MM-DD HH:mm:ss'
نشانهمعنانشانهمعنا
YYYY/YYسالmm/mدقیقه
MM/Mماه (۱–۱۲)ss/sثانیه
DD/DروزSSSمیلی‌ثانیه
HH/Hساعت (۰–۲۳)A/aAM/PM · am/pm
hh/hساعت (۱–۱۲)[...]متن عینی

اگر ورودی تجزیه‌شدنی نباشد، 'Invalid Date' برمی‌گرداند.

timestampToTime(timestamp?)

منسوخ است. یک Date برمی‌گرداند که متد format به نمونه‌اش چسبانده شده است.

نمونه

js
import { formatDate } from 'ranuts';

formatDate(); // '2026-07-25 14:30:00'
formatDate(1753425000000, 'YYYY/MM/DD'); // '2026/07/25'
formatDate(new Date(), 'YYYY[年]MM[月]DD[日] hh:mm a');
formatDate('not a date'); // 'Invalid Date'

یادداشت‌ها

  1. بزرگی و کوچکی حروف مهم است. MM ماه است و mm دقیقه؛ HH ۲۴ساعته است و hh ۱۲ساعته.
  2. الگو در یک گذر جایگزین می‌شود، پس مقداری که تازه نوشته شده هرگز به دام نشانه‌ای پس از آن نمی‌افتد.
  3. متن عینی را در [] بگذارید تا حرف‌هایش از جایگزینی کنار بمانند.

در ۰٫۳ درست و جایگزین شد

آرایندهٔ پیشین شش فراخوانی .replace() را با پرچم بی‌اعتنا به بزرگی حروف به هم زنجیر می‌کرد. دو پیامد داشت: الگوی پسین می‌توانست رقم‌هایی را بگیرد که الگوی پیشین همان دم نوشته بود، و /M+/g و /m+/g و /D+/gi روی هم می‌افتادند — پس الگویی با حروف کوچک مانند yyyy-mm-dd سال-دقیقه-روز می‌داد.

timestampToTime منسوخ است و جایش formatDate را بگیرید: چسباندن متد به نمونهٔ Date از سریال‌سازی جان به در نمی‌برد و نوعش را نمی‌توان فراتر از Function نوشت. format آن اکنون کار را به formatDate می‌سپارد، پس فراخوانندگان کنونی هم رسیدگی درست‌شدهٔ نشانه‌ها را می‌گیرند.

منتشرشده تحت مجوز MIT.