شنبه ۲۹ دي ۱۴۰۳
Tut24 آموزش برنامه نویسی و مجله تخصصی فناوری ورود/عضویت

آموزش جاوا اسکریپت - شیء تاریخ

شیء تاریخ یک نوع داده‌ای (datatype) است که در زبان جاوا اسکریپت به صورت پیش‌فرض تعریف شده است. شیء تاریخ با استفاده از new Date( ) ساخته می‌شود که در زیر نمونه‌ای از آن آمده است.

بعد از ایجاد یک شیء تاریخ، با استفاده از تعدادی متد می‌توانید بر روی آن عملیاتی انجام دهید. بیشتر متدها به شما اجازه می‌دهند تا سال، ماه، روز، ساعت، دقیقه، ثانیه و میلی‌ثانیه را بر روی شیء تاریخ تنظیم یا به دست آورید، با استفاده از زمان محلی (local time) یا زمان UTC (یونیورسال یا GMT) .

استاندارد ECMAScript، امکان نمایش هر تاریخ و زمان را با دقت میلی‌ثانیه برای شیء تاریخ می‌طلبد، در محدوده 100 میلیون روز قبل یا بعد از 1/1/1970. این محدوده شامل بیش از 273,785 سال به صورت مثبت یا منفی است، بنابراین جاوااسکریپت تاریخ و زمان را تا سال 275755 می‌تواند نشان دهد.

نحو (Syntax)

برای ایجاد یک شیء تاریخ با استفاده از سازنده (constructor) Date()، می‌توانید از هر یک از نحوه‌های زیر استفاده کنید.


new Date( )
new Date(milliseconds)
new Date(datestring)
new Date(year,month,date[,hour,minute,second,millisecond ])

توجه: پارامترهای داخل پرانتزها همیشه اختیاری هستند.

در ادامه، توضیحی درباره پارامترها آمده است −

    • بدون آرگومان − با عدم وجود هیچ آرگومانی، سازنده Date() یک شیء تاریخ و زمان را به صورت تاریخ و زمان فعلی ایجاد می کند.

    • میلی‌ثانیه − زمانی که یک آرگومان عددی منتقل می شود، به عنوان نشانگر عددی داخلی تاریخ در میلی‌ثانیه گرفته می‌شود، که توسط متد getTime() برگشت داده شده است. به عنوان مثال، منتقل کردن آرگومان 5000 یک تاریخ ایجاد می کند که نماینده پنج ثانیه پس از نیمه شب در تاریخ 1/1/70 است.

    • رشته تاریخ − زمانی که یک آرگومان رشته‌ای منتقل می‌شود، یک نمایش رشته‌ای از یک تاریخ است که در فرمتی که توسط متد Date.parse() قابل قبول است، ارائه شده است.

    • 7 آرگومان − برای استفاده از آخرین شکل سازنده‌ای که در بالا نشان داده شده است. در ادامه توضیح هر آرگومان آمده است −

      • سال − مقدار عددی نشان دهنده سال. برای سازگاری (به منظور جلوگیری از مشکل Y2K)، باید همیشه سال را به صورت کامل مشخص کنید؛ از 1998 استفاده کنید، به جای 98.

      • ماه − مقدار عددی نشان دهنده ماه، با شروع از 0 برای ژانویه تا 11 برای دسامبر.

      • روز − مقدار عددی نشان دهنده روز ماه.

      • ساعت − مقدار عددی نشان دهنده ساعت در روز (به صورت ۲۴ ساعته).

      • دقیقه − مقدار عددی نشان دهنده دقیقه در یک زمان.

      • ثانیه − مقدار عددی نشان دهنده ثانیه در یک زمان.

      • میلی ثانیه − مقدار عددی نشان دهنده میلی ثانیه در یک زمان.

ویژگی های تاریخ

در اینجا لیستی از ویژگی های شیء تاریخ همراه با توضیح آنها آمده است.

شماره سریال ویژگی و توضیحات
۱ constructor

عملکردی را مشخص می کند که شیء پروتوتایپ آن را ایجاد می کند.

۲ prototype

ویژگی پروتوتایپ به شما اجازه می دهد که ویژگی ها و روش ها را به یک شیء اضافه کنید.

در بخش های زیر، چند نمونه برای نشان دادن استفاده از ویژگی های مختلف تاریخ ارائه شده است.

روش های تاریخ

در اینجا لیستی از روش های استفاده شده با تاریخ همراه با توضیح آنها آمده است.

ردیف متد و توضیحات
1 Date()

تاریخ و زمان امروز را برمی‌گرداند.

2 getDate()

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

3 getDay()

روز هفته را برای تاریخ مشخص شده بر اساس زمان محلی برمی‌گرداند.

4 getFullYear()

سال تاریخ مشخص شده بر اساس زمان محلی را برمی‌گرداند.

5 getHours()

ساعت در تاریخ مشخص شده بر اساس زمان محلی را برمی‌گرداند.

6 getMilliseconds()

میلی ثانیه در تاریخ مشخص شده بر اساس زمان محلی را برمی‌گرداند.

7 getMinutes()

دقیقه در تاریخ مشخص شده بر اساس زمان محلی را برمی‌گرداند.

8 getMonth()

ماه در تاریخ مشخص شده بر اساس زمان محلی را برمی‌گرداند.

9 getSeconds()

ثانیه در تاریخ مشخص شده بر اساس زمان محلی را برمی‌گرداند.

10 getTime()

مقدار عددی تاریخ مشخص شده را به عنوان تعداد میلی ثانیه از 1 ژانویه 1970، 00:00:00 UTC برمی‌گرداند.

۱۱ getTimezoneOffset()

(شیفت زمانی (timezone offset

برای محل فعلی زمانی، شیفت زمانی را به دقیقه برمی‌گرداند.

۱۲ getUTCDate()

(تاریخ یونیورسال (universal date

روز (تاریخ) ماه در تاریخ مشخص شده را بر اساس زمان یونیورسال برمی‌گرداند.

۱۳ getUTCDay()

(روز یونیورسال (universal day

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

۱۴ getUTCFullYear()

(سال یونیورسال (universal year

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

۱۵ getUTCHours()

(ساعت یونیورسال (universal hours

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

۱۶ getUTCMilliseconds()

(میلی‌ثانیه یونیورسال (universal milliseconds

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

۱۷ getUTCMinutes()

(دقیقه یونیورسال (universal minutes

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

18 getUTCMonth()

به‌صورت زمان جهانی، ماه را برمی‌گرداند.

19 getUTCSeconds()

به‌صورت زمان جهانی، ثانیه را برمی‌گرداند.

20 getYear()

منسوخ شده - سال را برای یک تاریخ مشخص شده به‌صورت زمان محلی برمی‌گرداند. به‌جای آن از getFullYear استفاده کنید.

21 setDate()

روز ماه را برای یک تاریخ مشخص شده به‌صورت زمان محلی تعیین می‌کند.

22 setFullYear()

سال کامل را برای یک تاریخ مشخص شده به‌صورت زمان محلی تعیین می‌کند.

23 setHours()

ساعت را برای یک تاریخ مشخص شده به‌صورت زمان محلی تعیین می‌کند.

24 setMilliseconds()

میلی‌ثانیه را برای یک تاریخ مشخص شده به‌صورت زمان محلی تعیین می‌کند.

25 setMinutes()

دقیقه را برای یک تاریخ مشخص شده به‌صورت زمان محلی تعیین می‌کند.

۲۶ setMonth()

ماه را برای یک تاریخ مشخص با توجه به زمان محلی (local time) تنظیم می کند.

۲۷ setSeconds()

ثانیه را برای یک تاریخ مشخص با توجه به زمان محلی (local time) تنظیم می کند.

۲۸ setTime()

تاریخ را برای زمانی که با توجه به تعداد میلی ثانیه از 1 ژانویه 1970 00:00:00 به وقت یونیکس (UTC) نمایش داده شده، تنظیم می کند.

۲۹ setUTCDate()

روز ماه را برای یک تاریخ مشخص با توجه به زمان جهانی (universal time) تنظیم می کند.

۳۰ setUTCFullYear()

سال کامل را برای یک تاریخ مشخص با توجه به زمان جهانی (universal time) تنظیم می کند.

۳۱ setUTCHours()

ساعت را برای یک تاریخ مشخص با توجه به زمان جهانی (universal time) تنظیم می کند.

۳۲ setUTCMilliseconds()

میلی ثانیه را برای یک تاریخ مشخص با توجه به زمان جهانی (universal time) تنظیم می کند.

۳۳ setUTCMinutes()

دقیقه را برای یک تاریخ مشخص با توجه به زمان جهانی (universal time) تنظیم می کند.

۳۴ setUTCMonth()

ماه را برای یک تاریخ مشخص شده براساس زمان جهانی (universal time) تنظیم می‌کند.

۳۵ setUTCSeconds()

ثانیه را برای یک تاریخ مشخص شده براساس زمان جهانی (universal time) تنظیم می‌کند.

۳۶ setYear()

منسوخ شده - سال را برای یک تاریخ مشخص شده براساس زمان محلی (local time) تنظیم می‌کند. به جای آن از setFullYear استفاده کنید.

۳۷ toDateString()

بخش "تاریخ" را از تاریخ به شکل قابل خواندن انسانی برمی‌گرداند.

۳۸ toGMTString()

منسوخ شده - تاریخ را به شکل رشته‌ای تبدیل می‌کند، با استفاده از قواعد اینترنت GMT. به جای آن از toUTCString استفاده کنید.

۳۹ toLocaleDateString()

بخش "تاریخ" را از تاریخ به صورت رشته‌ای با استفاده از قواعد کنونی محلی برمی‌گرداند.

40 toLocaleFormat()

تاریخ را با استفاده از یک رشته قالب بندی شده، به رشته‌ای تبدیل می‌کند.

41 toLocaleString()

تاریخ را با استفاده از قواعد کنونی محلی، به رشته‌ای تبدیل می‌کند.

42 toLocaleTimeString()

زمان را به صورت رشته‌ای با استفاده از قواعد کنونی محلی، برمی‌گرداند.

43 toSource()

رشته‌ای را برمی‌گرداند که معادل یک شی تاریخ است؛ می‌توانید از این مقدار برای ایجاد یک شی جدید استفاده کنید.

44 toString()

رشته‌ای را برمی‌گرداند که شی تاریخ مشخص شده را نشان می‌دهد.

45 toTimeString()

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

46 toUTCString()

تاریخ را با استفاده از قواعد زمان جهانی، به رشته‌ای تبدیل می‌کند.

47 valueOf()

مقدار اصلی یک شی تاریخ را برمی‌گرداند.

تبدیل یک تاریخ به رشته، با استفاده از رویه زمانی جهانی (UTC).

روش‌های استاتیک تاریخ

علاوه بر روش‌های نمونه‌ای که در بخش‌های قبلی لیست شدند، شیء تاریخ نیز دو روش استاتیک تعریف کرده است. این روش‌ها از طریق سازنده Date() فراخوانی می‌شوند.

ردیف روش و توضیحات
۱ Date.parse()

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

۲ Date.UTC()

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