پرش به محتوای اصلی

محاسبه‌گر روزهای کاری رایگان

روزهای کاری بین تاریخ‌ها را بشمارید یا روزهای کاری را به تاریخ اضافه/کم کنید. مدیریت آخر هفته و لیست تعطیلات قابل تنظیم.

پس از بارگذاری آفلاین کار می‌کند

روزهای آخر‌هفته (غیر‌کاری)

0 تعطیل پیکربندی‌شده

کاربردهای رایج

  • روزهای کاری برای مهلت پروژهمحاسبه جداول زمانی واقع بینانه پروژه با حذف آخر هفته و تعطیلات.
  • زمان پاسخ SLA را در روزهای کاری بررسی کنیدSLA های مشتری اغلب پاسخ را در "روزهای کاری" مشخص می کنند — دقیقاً محاسبه کنید که چه زمانی مهلت 5 روز کاری برای
  • محاسبه روزهای تعطیل/مرخصیچند روز کاری واقعاً خواهید گرفت؟ تعداد دقیق روزهای کاری را برای درخواست های مرخصی محاسبه کنید.
  • مهلت های ارسال دولتیبازگشت مالیات، مهلت های دادگاه، ارسال نظارتی — اغلب در روزهای کاری محاسبه می شود.
  • تخمین تاریخ ارسالتاریخ تحویل مورد انتظار را برای محموله هایی محاسبه کنید که در روزهای کاری قیمت گذاری شده اند.

نحوه کار

این ابزار کاملاً در مرورگر و بدون هیچ کتابخانه خارجی اجرا می‌شود — تمام محاسبات تاریخ با جاوااسکریپت دست‌نویس و شیء بومی Date انجام می‌شود. دو حالت دارد: شمارش روزهای کاری بین دو تاریخ، و محاسبه یک تاریخ آینده (یا گذشته) با اضافه یا کم کردن تعداد مشخصی روز کاری.

  1. 1
    تجزیه تاریخ بدون انحراف UTC
    ورودی‌های تاریخ با تقسیم رشته YYYY-MM-DD به بخش‌های سال، ماه، و روز و ساخت یک Date محلی — نه Date.parse() — تجزیه می‌شوند، پس نتیجه همیشه همان روز تقویمی است که تایپ کردید، صرف‌نظر از آفست ناحیه زمانی شما.
  2. 2
    اعتبارسنجی و جست‌وجوی تعطیلات
    هر تعطیلی با یک عبارت باقاعده سخت‌گیرانه YYYY-MM-DD تطبیق داده می‌شود، سپس با بازسازی Date و مقایسه دوباره اجزای آن بررسی می‌شود — پس تاریخ‌های ناممکن مانند ۲۰۲۶-۰۲-۳۱ رد می‌شوند و در رابط کاربری علامت‌گذاری می‌شوند، نه اینکه بی‌صدا به مارس منتقل شوند. ورودی‌های معتبر در یک Set با کلید رشته تاریخ محلی ذخیره می‌شوند تا در حلقه جست‌وجوی O(1) داشته باشند.
  3. 3
    تکرار روز-به-روز با آخر هفته‌های قابل‌پیکربندی
    برای حالت 'شمارش بین تاریخ‌ها'، ابزار هر روز تقویمی در بازه را می‌پیماید، هرکدام را در برابر روزهای آخر هفته پیکربندی‌شده شما (هر ترکیبی از هفت روز) و Set تعطیلات بررسی می‌کند، سپس روزهای کاری، روزهای آخر هفته، و تعطیلات برخوردشده را جداگانه می‌شمارد. برای حالت 'افزودن روزهای کاری'، یک روز در هر بار جلو یا عقب گام برمی‌دارد، روزهای غیرکاری را رد می‌کند، تا تعداد درخواستی روزهای کاری مصرف شود.
  4. 4
    نمایش نتیجه متناسب با زبان و منطقه
    تاریخ نهایی در حالت 'افزودن' با Intl داخلی مرورگر از طریق toLocaleDateString() قالب‌بندی می‌شود، پس در زبان محلی و قرارداد تقویمی کاربر بدون هیچ کتابخانه اضافی‌ای رندر می‌شود.

ابزارهای مرتبط

سؤالات متداول