خانه - ایمنی
جاوا اسکریپت تاریخ و زمان فعلی را دریافت می کند. مقایسه JS بومی، MomentJS و TempusJS
جاوا اسکریپت - درس 11: تاریخ، نمایش و پردازش در جاوا اسکریپت، تاریخ به عنوان تعداد میلی ثانیه هایی تعریف می شود که از 1 ژانویه 1970 گذشته است.

یک شی داخلی برای کار با تاریخ و زمان استفاده می شود تاریخ. این شی هیچ خاصیت ندارد، اما چندین روش دارد که به شما امکان می دهد تاریخ و زمان را تنظیم و تغییر دهید.

یک شی تاریخبا استفاده از اپراتور ایجاد شده است جدیدو طراح - تاریخ.

مثلا:

var myData=تاریخ جدید();

مقدار متغیر اطلاعات منتاریخ و زمان فعلی خواهد بود:

روش های شی تاریخمی توانید مقادیر ماه، روز هفته، ساعت، دقیقه و ثانیه را به طور جداگانه دریافت کنید:

  • getDate- عددی را در محدوده 1 تا 31 نشان دهنده روز ماه برمی گرداند.
  • ساعت دریافت- ساعت روز را در محدوده 0 (نیمه شب) تا 23 برمی گرداند.
  • دریافت دقیقه- دقیقه را در محدوده 0 تا 59 برمی گرداند.
  • دریافت ثانیه- ثانیه ها را در محدوده 0 تا 59 برمی گرداند.
فرض کنید می‌خواهیم اسکریپتی بنویسیم که زمان جاری را شناسایی کرده و آن را با فرمت "hh:mm:ss" خروجی می‌دهد.

تاریخ جاوا اسکریپت

حالا بیایید خود تابع را بنویسیم nTime():

تابع nTime(obj) ( var t=new Date(); var h=t.getHours(); var m=t.getMinutes(); var s=t.getSeconds(); var result=h+":"+m+ ":"+s; obj.res.value=result;)

* همانطور که به یاد دارید، متدها با یک نقطه از شی جدا می شوند، ما در درس 3 در این مورد صحبت کردیم * همانطور که می بینید، همه چیز ساده است. ابتدا زمان فعلی را تعیین می کنیم و سپس با استفاده از روش ها، مقادیر فردی ساعت، دقیقه و ثانیه را از آن استخراج می کنیم.

در اینجا من همچنین می خواهم خط را روشن کنم var result=h+":"+m+":"+s. برای اولین بار با نیاز به خروجی مقادیر متغیر و متن ساده مواجه شدیم. در اصل، هیچ چیز پیچیده ای نیست: متغیرها همانطور که هستند نوشته می شوند، متن در نقل قول قرار می گیرد و علامت + عمل الحاق را انجام می دهد، یعنی. اتحاد آنها

در مثال ما، یک اشکال وجود داشت: می‌خواستیم زمان با فرمت «hh:mm:ss» نمایش داده شود، اما اکنون در قالب «h:m:s» نمایش داده می‌شود. یعنی در ساعت 5 صبح زمان به صورت "5:0:0" نمایش داده می شود، اما من دوست دارم اینگونه باشد: "05:00:00" (که رایج تر است). مانند مشق شبمی توانید سعی کنید این را برطرف کنید. مثلا با استفاده از اپراتور اگرو رشته تحت اللفظی "0" (ایده ساده است: اگر کمتر از 10 ساعت باشد، نتیجه قبل از ساعتبا همه متغیرها "0" و غیره بنویسید).

در ضمن بیایید به بررسی روش های شیء ادامه دهیم تاریخ:

  • getDay- روز هفته را به عنوان یک عدد صحیح از 0 (یکشنبه) تا 6 (شنبه) برمی گرداند.
  • دریافت ماه- تعداد ماه در سال را به صورت یک عدد صحیح از 0 (ژانویه) تا 11 (دسامبر) برمی گرداند.
  • getYear- سال را به عنوان دو رقم آخر برمی گرداند ( getFullYear- سال را به صورت چهار رقمی برمی گرداند).

    * متاسفانه از سال 2000 مشکل نمایش سال در مرورگرهای مختلف وجود دارد. متد getYear در IE سال کامل را (به جای دو رقم آخر) نمایش می دهد و فایرفاکس به جای XX 1XX را نمایش می دهد (یعنی جایگزین 1). بنابراین ترجیحاً از روش getFullYear استفاده شود.

بیایید یک اسکریپت بنویسیم که تاریخ فعلی را تعیین کند و آن را در قالب "روز ماه سال" نمایش دهد.

کد صفحه HTML ساده خواهد بود:

تاریخ جاوا اسکریپت

حالا بیایید خود تابع را بنویسیم tData():

تابع tData(obj) ( var s؛ var t=new Date(); var y=t.getFullYear(); var d=t.getDate(); var mon=t.getMonth(); سوئیچ (mon) (مورد 0: s="ژانویه"؛ شکست؛ مورد 1: s="فوریه"؛ شکست؛ مورد 2: s="مارس"؛ شکست؛ مورد 3: s="آپریل"؛ شکست؛ مورد 4: s="می "; break; case 5: s="June"; break; case 6: s="July"; break; case 7: s="August"; break; case 8: s="September"; break; case 9 : s="اکتبر"; break; case 10: s="November"; break; case 11: s="December"; break; ) var result=d+" "+s+" "+y; obj.res.value =نتیجه؛ )

معلوم شد طولانی تر از مثال اول، زیرا من باید نام ماه ها را به روسی ترجمه کنم.

روش های مورد بحث در بالا به شما امکان می دهد تاریخ را بدست آورید. در صورت نیاز به تعیین تاریخ، باید از روش های زیر استفاده کنیم:

  • setDate- روز ماه را در محدوده 1 تا 31 تنظیم می کند.
  • setHours- ساعت را برای زمان فعلی در محدوده 0 (نیمه شب) تا 23 تنظیم می کند.
  • تنظیم دقیقه- دقیقه را در محدوده 0 تا 59 تنظیم می کند.
  • setseconds- ثانیه ها را در محدوده 0 تا 59 تنظیم می کند.
  • مجموعه سال- مقدار سال را تعیین می کند.
  • setMonth- مقدار ماه را در محدوده 0 (ژانویه) تا 11 (دسامبر) تنظیم می کند.
  • مدت زمان معینی- مقدار یک شی را تعیین می کند تاریخو تعداد میلی ثانیه هایی را که از اول ژانویه 1970 گذشته است را برمی گرداند.
بنابراین، اگر بخواهیم تاریخ 6 دسامبر 2010 را تنظیم کنیم، کد زیر را در تابع خواهیم داشت:

Var t=new Date(); var y=t.setYear(2010); var d=t.setDate(6); var mon=t.setMonth(11); ...

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

Var t=new Date("Feb,10,1975 17:45:10");

ساعت ها، دقیقه ها و ثانیه ها را می توان حذف کرد (صفر خواهند شد):

Var t=new Date("Feb,10,1975");

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

Var t=new Date(75, 1, 10, 17, 45, 10);

یا با حذف ساعت، دقیقه و ثانیه (صفر خواهند شد):

Var t=new Date(75, 1, 10);

* یک مشکل وجود دارد: IE نمی خواهد سال را نمایش دهد، بنابراین بهتر است از این گزینه ها استفاده نکنید.

این همه چیز است، شما کاملاً آماده هستید تا خودتان یک اسکریپت بنویسید، که وقتی صفحه بارگیری می شود، تاریخ، زمان و روز بازدید خود را (به شکل معمولی روسی) نمایش می دهد. موفق باشید!

یکی دیگر از موارد مفید برای وب سایت ها درج تاریخ جاری است. ده ها نمونه از اسکریپت های تاریخ را می توان در اینترنت یافت، اما بسیاری از آنها، به نظر من، دست و پا گیر و در نتیجه زشت هستند. در ضمن با استفاده از به معنی استانداردجاوا اسکریپت، شما می توانید تاریخ را به سادگی در صفحه وب سایت درج کنید. من اغلب از آن استفاده می کنم! در تصویر (اسکرین شات از وب سایت فعلی) از املاک Skazka!

در اینجا کل اسکریپت تاریخ آمده است:

به نظر من، ساده تر، کاملاً زیبا و قابل درک نمی تواند باشد. اگر تمایلی به مطالعه ساخت این اسکریپت ندارید، به سادگی آن را در هر جایی از صفحه HTML قرار دهید و کتیبه زیر را دریافت کنید:

یکی دیگر از گزینه های پیشرفته تر

//
// ]]>
// ]]>
// ]]>
// ]]>
// ]]>
! امروز
// + " " + d.getFullYear() + "g.");
// ]]>
// ]]>
// ]]>
// ]]>
// ]]>
// ]]>

به نظر می رسد این است:

امروز

به طور کلی، هیچ مهارتی لازم نیست، فقط احمقانه کد را وارد کنید و همه چیز اوکی است!

جزئیات بیشتر:

بنابراین، با اختصاص دادن مقدار تاریخ به متغیر d شروع می کنیم، سپس برای روزهای هفته (روز) و ماه ها (ماه) آرایه هایی (Array) ایجاد می کنیم و آنها را به شکل گرامری لازم مشخص می کنیم: case، عدد، حرف بزرگ اگر کلمه در ابتدای تاریخ ظاهر می شود و غیره. آخرین خط اسکریپت چاپ تاریخ واقعی (document.write) است. در اینجا شما تعیین می کنید که چه چیزی و به چه ترتیبی در خط تاریخ فعلی نمایش داده شود. اجزا با علامت + از یکدیگر جدا می شوند. برای وارد کردن یک فاصله، از ساختار " " و برای وارد کردن حرف g (سال) از ساختار "g" استفاده کنید.

همانطور که از اسکریپت می بینید، دریافت اطلاعات مربوط به زمان جاری توسط عنصر get انجام می شود. این روش به شما امکان می دهد اطلاعات زیر را به دست آورید:

  • getDate() - عددی را از 1 تا 31 نشان دهنده روز ماه برمی گرداند.
  • getDay() - روز هفته را به عنوان یک عدد صحیح از 0 (یکشنبه) تا 6 (شنبه) برمی گرداند.
  • getMonth() - تعداد ماه در سال را برمی گرداند.
  • getFullYear() - سال را برمی گرداند. اگر به سادگی از getYear() استفاده کنید، سال جاری منهای 1900 نمایش داده می شود.
  • get Hours() - ساعت روز را برمی گرداند.
  • getMinutes() - دقیقه را به عنوان یک عدد از 0 تا 59 برمی گرداند.
  • getSeconds() - تعداد ثانیه ها را از 0 تا 59 برمی گرداند.

قرار دادن اسکریپت جاوا مستقیماً در صفحه وب سایت همیشه راحت نیست. بهتر است توضیحات اسکریپت را در ابتدای صفحه بین تگ ها قرار دهید و متغیری را تنظیم کنید که در صورت نیاز آن را در متن فراخوانی کنیم. بیایید آن را TODAY بنامیم و فرم خروجی تاریخ را مشابه شکل بالا در آن تعریف کنیم. اسکریپت به شکل زیر خواهد بود:


برای نمایش تاریخ، اسکریپت را در محل مورد نظر در کد HTML صفحه با استفاده از دستور زیر فراخوانی کنید:


document.write(TODAY);

اگر سایت شما حاوی صفحات زیادی است که باید تاریخ را در آنها نمایش دهید، بهتر است اسکریپت جاوا را برای نمایش تاریخ در یک فایل جداگانه جدا کنید، به عنوان مثال data.js. در عمل، این صفحه ای است که از اولین اسکریپت توصیف شده تشکیل شده است، یعنی با خط document.write (به بالا مراجعه کنید). باید در همان دایرکتوری صفحه اصلی قرار داشته باشد و در محلی که تاریخ نمایش داده می شود به صورت زیر فراخوانی شود:


فراموش نکنید که بررسی کنید فایل data.js دارای رمزگذاری مشابه با سند اصلی باشد، در غیر این صورت تاریخ با قلاب ها، مربع ها و ترفندهای فوق العاده نمایش داده می شود.

اظهار نظر.باید در نظر داشت که اسکریپت توصیف شده تاریخ تنظیم شده در رایانه کاربر را نشان می دهد که همیشه با زمان فعلی واقعی مطابقت ندارد. اگر نیاز به نمایش زمان دقیق دارید، باید از یک اسکریپت PHP استفاده کنید که زمان را روی سرور نشان دهد.

در این درس با شی جاوا اسکریپت Date آشنا می شویم و نحوه استفاده از آن را در عمل می آموزیم.

ایجاد یک تاریخ - 4 مثال

در جاوا اسکریپت، ایجاد تاریخ با استفاده از شی Date انجام می شود. شیء Date یک نقطه در محور زمان را نشان می دهد و برای ذخیره تاریخ و زمان با دقت میلی ثانیه طراحی شده است.

نمونه هایی از ایجاد تاریخ در جاوا اسکریپت.

1. تاریخ و زمان فعلی را ایجاد کنید.

دریافت تاریخ و زمان فعلی در جاوا اسکریپت با نمونه سازی یک شی Date بدون تعیین هیچ پارامتری انجام می شود:

// تاریخ فعلی (تاریخ و زمانی که در لحظه ایجاد نمونه شی Date بود کامپیوتر محلی user) var now = new Date(); // برای مثال، تاریخ جاری را در کنسول console.log(now) چاپ کنید.

اگر فقط نیاز به دریافت دارید تاریخ امروزدر قالب رشته، می توانید از متد toLocaleDateString استفاده کنید:

Var now = new Date().toLocaleDateString(); // 12/19/2019

زمان فعلی کاربر را می توان به صورت زیر بدست آورد:

Var now = new Date().toLocaleTimeString(); // 11:02:48 var now = new Date().toLocaleTimeString().slice(0,-3); // 11:02

شما می توانید تاریخ و زمان را در قالب رشته ای مانند زیر دریافت کنید:

Var now = new Date().toLocaleString(); // 1398/12/19، 11:02:48

2. ایجاد تاریخ با تعیین تعداد میلی ثانیه هایی که از 1 ژانویه 1970 00:00:00 UTC به شیء Date گذشته است.

// 1 سال (نه سطح بالا) = 365*24*60*60*1000 = 31536000000 ms // برای مثال، تاریخ 01/01/1971، 00:00:00 UTC ایجاد کنید: var date1 = تاریخ جدید( 31536000000);

3. ایجاد تاریخ با تعیین آن به شیء Date به عنوان رشته.

با استفاده از این گزینه برای ایجاد تاریخ، جاوا اسکریپت سعی می کند رشته ارسال شده به آن را درک کند و بر اساس آن تاریخ تولید کند. تبدیل رشته به تاریخ در جاوا اسکریپت با استفاده از روش Date.parse انجام می شود.

مثلا:

// ایجاد تاریخ بر اساس رشته ای با فرمت DD.MM.YY var date1 = new Date("05.11.19"); // ایجاد تاریخ بر اساس رشته ای با فرمت YYYY-MM-DDThh:mm:ss.sss (از کاراکتر T برای جدا کردن تاریخ و زمان استفاده می شود) var date2 = new Date("2015-02-24T21:23 ")؛ // ایجاد تاریخ بر اساس رشته ای که منطقه زمانی را نشان می دهد (قالب YYYY-MM-DDThh:mm:ss.sss±hh:mm): var date3 = new Date("2015-02-24T22:02+03:00 ")؛

4. ایجاد تاریخ با تعیین پارامترهای زیر که با کاما از هم جدا شده اند: سال (4 رقم)، ماه (شمارش از 0)، روز (1..31)، ساعت (0..23)، دقیقه (0..59) ، ثانیه (0..59)، میلی ثانیه (0..999). علاوه بر این، تنها دو پارامتر اول اجباری هستند.

نمونه ای از ایجاد یک تاریخ که فقط پارامترهای مورد نیاز را مشخص می کند:

// تاریخ 01/01/2015 را ایجاد کنید (پارامترهای پیش فرض نامشخص عبارتند از: عدد - 01، ساعت - 00، دقیقه - 00، ثانیه - 00، میلی ثانیه - 000). var date1 = new Date(2015.01); // ایجاد تاریخ 01/24/2015, 21:23 var date2 = new Date(2015,01,24,21,23);

توجه: اگر نیاز به تنظیم تاریخ و زمان در UTC دارید، می توانید از روش Date.UTC استفاده کنید.

//1 مثال var date1 = Date.UTC(2015,1,1); var date2 = new Date(date1); هشدار(date2.toUTCString()); //2 مثال var newDate = new Date(Date.UTC(2015,1,1)); هشدار(newDate.toUTCString());

بازیابی اجزای جداگانه تاریخ و زمان

در جاوا اسکریپت از روش های زیر برای به دست آوردن اجزای تاریخ و زمان فردی استفاده می شود:

  • getFullYear() – سال متشکل از 4 عدد را برمی گرداند.
  • getMonth() – ماه را در قالب یک عدد از 0 تا 11 (0 – ژانویه، 1 – فوریه، 2 – مارس، ...، 11 – دسامبر) برمی گرداند.
  • getDate() - روز ماه را از 1 تا 31 برمی گرداند.
  • getHours() – تعداد ساعت ها را از 0 تا 23 برمی گرداند.
  • getMinutes() - تعداد دقیقه ها را از 0 تا 59 برمی گرداند.
  • getSeconds() - تعداد ثانیه ها را از 0 تا 59 برمی گرداند.
  • getMilliseconds() – تعداد میلی ثانیه را از 0 به 999 برمی گرداند.

همه این روش ها اجزای تاریخ و زمان جداگانه را با توجه به منطقه زمانی تنظیم شده در دستگاه محلی کاربر برمی گرداند.

// ایجاد تاریخ 11/11/2019 00:00 UTC var newDate = new Date(Date.UTC(2019,11,11)); // اگر زمان محلی در دستگاه کاربر UTC+10:00 باشد newDate.getFullYear(); //2019 newDate.getMonth(); // 10 newDate.getDate(); // 11 newDate.getHours(); // 10 newDate.getMinutes(); // 0 newDate.getSeconds(); // 0 newDate.getMilliseconds(); // 0

مثالی که در آن بسته به بازه زمانی کاربر در حال حاضر به او سلام می کنیم:

// دریافت زمان فعلی کاربر و اجزای این زمان var now = new Date(), hour = now.getHours(), minute = now.getMinutes(), second = now.getSeconds(), message = ""; // بسته به زمان محلی کاربر یک عبارت تبریک تعریف کنید اگر (ساعت

 


خواندن:



منوی سمت چپ cayo coco را باز کنید

منوی سمت چپ cayo coco را باز کنید

جزیره کایو کوکو یک جزیره تفریحی در مرکز کوبا است. موقعیت جزیره جزیره کایو کوکو دقیقا روبروی کانال ویجو در...

چرا به ارتباطات رادیویی و ایستگاه های رادیویی نیاز داریم؟

چرا به ارتباطات رادیویی و ایستگاه های رادیویی نیاز داریم؟

برخی از مردم رویای یک آیفون جدید، برخی دیگر یک ماشین و برخی دیگر مجموعه ای از قطعات و بلندگوی جدید رادیوی خود را در سر می پرورانند. زمانی نه چندان دور بود که ...

ضرایب همبستگی رتبه کندال و اسپیرمن مثال ضریب همبستگی رتبه کندال

ضرایب همبستگی رتبه کندال و اسپیرمن مثال ضریب همبستگی رتبه کندال

ارائه و پردازش مقدماتی ارزیابی های کارشناسی در عمل از چندین نوع ارزیابی استفاده می شود: - کیفی (اغلب به ندرت، ...

توابع برنامه نویسی

توابع برنامه نویسی

هدف کار: 1) قوانین توصیف توابع را مطالعه کنید. 2) کسب مهارت در استفاده از توابع هنگام نوشتن برنامه در C++. نظری...

فید-تصویر RSS