דלג לתוכן הראשי

מחשבון הפרש תאריכים בחינם

חשב את ההפרש המדויק בין שני תאריכים — שנים, חודשים, ימים, שבועות, ימי עבודה (ללא סופי שבוע), שעות ודקות.

פועל לא-מקוון לאחר טעינה

הגדרות מוכנות מהירות

בחר שני תאריכים כדי לראות את ההבדל.

שימושים נפוצים

  • חשב ימים עד תאריך לידה צפויספירה לאחור לתאריך לידה צפוי של התינוק — גלה בדיוק כמה שבועות, ימים ושעות עד היום הגדול.
  • ימים לחופשתךספירה לאחור לטיול שלך עם ימי עבודה, סה"כ ימים ושבועות שנותרו לצורכי תכנון.
  • ימי עבודה עד יעד הפרוייקטחשב את המספר המדויק של ימי עבודה (לא כולל סוף שבוע) בין היום לבין יעד פרוייקט.
  • חשב ימי הנצחה ביחדגלה בדיוק כמה ימים, חודשים ושנים היית ביחד עם מישהו מיוחד.
  • מחשבון הבדל גיל בין שני אנשיםחשב את הבדל הגיל המדויק בין שתי תאריכי לידה — שנים, חודשים וימים זה מזה.

כיצד זה עובד

כל החישוב פועל כולו בדפדפן באמצעות חשבון UTC כתוב-יד — ללא ספרייה חיצונית, ללא בקשת שרת. הכלי מפענח מחרוזות YYYY-MM-DD לרכיבי לוח שנה, מחשב הפרשים באמצעות חותמות זמן במילישניות של Date.UTC() כדי למנוע סחיפת שעון קיץ, וחוזר יום-אחר-יום כדי לספור ימי עבודה שני-שישי.

  1. 1
    פענוח תאריך בטוח
    כל מחרוזת תאריך מאומתת עם ביטוי רגולרי ואז משוחזרת דרך Date.UTC() — לא new Date(string) — כך שמשתמשים ממערב ל-UTC לעולם לא רואים הזחת יום בשבוע שנגרמת מפרשנות אזור הזמן המקומי של הדפדפן לקלטים של תאריך בלבד.
  2. 2
    חיסור מילישניות UTC
    שני תאריכי הלוח מומרים לחותמות זמן חצות UTC עם Date.UTC(y, m, d). חלוקה שלמה ב-86,400,000 מ"ש נותנת ספירת יום-שלם מדויקת שחסינה מפני מעברי שעון קיץ, שיכולים אחרת לגרום ליום להיראות באורך 23 או 25 שעות.
  3. 3
    פירוק לוח שנה וספירת ימי עבודה
    פירוק שנה/חודש/יום כתוב-יד מטפל באי-סדירויות אורך חודש (לוקח בהלוואה ימים מהחודש הקודם בעת הצורך). לולאה נפרדת צועדת על כל יום UTC בין שני התאריכים ומגדילה מונה רק עבור שני-שישי (getUTCDay() !== 0 או 6), ומפיקה סך ימי עבודה מדויק ללא קשר לאזור.
  4. 4
    התוצאות מוצגות בכל היחידות
    הסכומים מעוצבים עם toLocaleString() באמצעות אזור הדף לקיבוץ ספרות מודע-אזור, ואז מוצגים בו-זמנית כשנים/חודשים/ימים, סך ימים, ימי עבודה, שבועות ושעות ודקות. זוג התאריכים הנוכחי נכתב לכתובת דרך history.replaceState כך שכל תוצאה ניתנת לסימון או שיתוף כקישור ישיר.

כלים קשורים

שאלות נפוצות