জাভাস্ক্রিপ্ট টাইমস্ট্যাম্প ফরম্যাট পাওয়া যায় Date() অবজেক্ট দিয়ে, যা বর্তমান সময়কে পড়া যACAF টাইমস্ট্যাম্প ফরম্যাটে ধারণ করে। আপনি নতুন Date() অবজেক্ট বিভিন্ন টাইমস্ট্যাম্প দিয়ে তৈরি করতে পারেন, এবং getTime() মেথড দিয়ে করেন্ট Unix টাইম পেতে পারেন।
প্রোগ্রামিং-এ ডেট ও টাইম ম্যানেজ করা অত্যন্ত গুরুত্বপূর্ণ। জাভাস্ক্রিপ্টে ডাইনামিক কপিরাইট ডেট, শিডিউল, ইভেন্ট লিস্ট ও তাদের টাইম — এসব সময়/ডেট ব্যবহার করে।
জাভাস্ক্রিপ্টে টাইম নিয়ে কাজ করতে Date অবজেক্ট এবং এর মেথডগুলো ব্যবহার করুন। Date অবজেক্ট ডেট ও টাইম স্টোর করে এবং আপনার প্রয়োজন অনুযায়ী ফরম্যাট করতে দেয়।
এই টিউটোরিয়ালে জাভাস্ক্রিপ্ট টাইমস্ট্যাম্প তৈরি করার বেসিক, ডেট ও টাইমস্ট্যাম্প ফরম্যাটিং, এবং UTC টাইম ভ্যালু পাওয়া আলোচনা করব।
জাভাস্ক্রিপ্ট টাইমস্ট্যাম্প অবজেক্ট
Date অবজেক্ট জাভাস্ক্রিপ্টে ডেট ও টাইম স্টোর করতে ব্যবহৃত হয়। কোনো আর্গুমেন্ট ছাড়া Date অবজেক্ট বর্তমান ডেট ও টাইম ধারণ করে। উদাহরণ:
const currentTime = new Date(); console.log(currentTime);
ফলাফল: Wed Feb 05 2020 11:18:21 GMT+0000 (Greenwich Mean Time)।
ফলাফল বিশ্লেষণ:
- দিন: Wed
- মাস: Feb
- তারিখ: 05
- বছর: 2020
- ঘন্টা: 11
- মিনিট: 18
- সেকেন্ড: 21
- টাইম জোন: GMT+0000 (Greenwich Mean Time)
তবে জাভাস্ক্রিপ্ট ডেট ও টাইম বুঝে Unix Time-এ। Unix Time হলো ১ জানুয়ারি ১৯৭০ মিডনাইট থেকে কত মিলিসেকেন্ড बीतेেছে তা বোঝায়। এটি প্রোগ্রামিং-এ টাইম স্টোর করার যুগম মান।
Unix টাইমস্ট্যাম্প পেতে getTime() মেথড ব্যবহার করুন:
console.log(currentTime.getTime());
ফলাফল: 1580901774643। এই সংখ্যাটি উপরের তথ্যের সমান।
বিদ্যমান টাইমস্ট্যাম্প থেকে নতুন Date অবজেক্ট তৈরি
এখন পর্যন্ত বর্তমান সময় থেকে Date অবজেক্ট তৈরি করলাম। কিন্তু বিদ্যমান টাইমস্ট্যাম্প থেকেও Date অবজেক্ট তৈরি করা যায়।
এটি উপযোগী যদি আপনার কাছে ইতিমধ্যে একটি ডেট ভ্যালু থাকে কিন্তু Date অবজেক্ট দিয়ে ম্যানিপুলেট করতে চান। যেমন: Unix টাইমস্ট্যাম্পকে লং-ফর্ম টাইমে কনভার্ট করা।
নতুন Date অবজেক্ট তৈরি করার পদ্ধতিগুলো:
- Unix টাইমস্ট্যাম্প:
new Date(timestamp) - ডেট স্ট্রিং:
new Date("date string") - নির্দিষ্ট ডেট ও টাইম:
new Date(year, month, day, hours, minutes, seconds, milliseconds)
উদাহরণ:
new Date(9231925020); new Date("April 17 1970 21:25:25"); new Date(1970, 3, 17, 21, 25, 25, 0);
এই তিনটি একই ইনফরমেশন দিয়ে Date অবজেক্ট তৈরি করে। getTime() দিয়ে প্রিন্ট করলে সব একই ফলাফল দেবে: Fri Apr 17 1970 21:25:25 GMT+0100 (Greenwich Mean Time)।
দ্রষ্টব্য: লাস্ট মেথডে মাস 0-থেকে কাউন্ট হয় (০=জানুয়ারি, ৩=এপ্রিল)। অনুপস্থিত মান ০ সেট হয়।
ডেট রিট্রিভ করা
Date অবজেক্ট থাকলে ডেট বা টাইমের যেকোনো অংশ বের করা যায়। লোকাল টাইমজোন অনুযায়ী get মেথডগুলো:
- বছর:
getFullYear() - মাস:
getMonth()(০-১১) - তারিখ:
getDate() - সপ্তাহের দিন:
getDay()(০-৬) - ঘন্টা:
getHours() - মিনিট:
getMinutes() - সেকেন্ড:
getSeconds() - মিলিসেকেন্ড:
getMilliseconds()
উদাহরণ: ১ জানুয়ারি ২০২০ এর জন্য Date অবজেক্ট:
const january2020 = new Date(2020, 0, 1); january2020.getFullYear(); // 2020 january2020.getMonth(); // 0 january2020.getDate(); // 1
Date অবজেক্ট দিয়ে টাইম কম্পেয়ারও করা যায়। যেমন: ২০২০ কিনা চেক করা:
const currentDate = new Date(); if (currentDate.getFullYear() === 2020) { console.log("It's 2020!"); } else { console.log("It's not 2020!"); }
UTC মেথড
উপরের get মেথডগুলো লোকাল টাইমজোন অনুযায়ী ফলাফল দেয়। UTC (Coordinated Universal Time) ভ্যালু পেতে get-এর পর UTC যোগ করুন।
getUTCHours()getUTCMinutes()- আরও...
উদাহরণ:
const currentDate = new Date(); console.log(currentDate.getHours()); console.log(currentDate.getUTCHours());
যদি আপনি UTC-তে থাকেন, দুটি মান একই হবে। UTC আন্তর্জাতিকভাবে স্বীকৃত মানদণ্ড, একাধিক টাইমজোন সমর্থনকারী অ্যাপ্লিকেশনে এটি খুব উপযোগী।
উপসংহার
টাইম জাভাস্ক্রিপ্টের একটি গুরুত্বপূর্ণ অংশ যা কোডিং-এ বারবার MATERIALIZE হবে। এই টিউটোরিয়ালে Date অবজেক্ট তৈরি করা, কাস্টম Date অবজেক্ট (টাইমস্ট্যাম্প, ডেট স্ট্রিং, নির্দিষ্ট টাইম), এবং বিল্ট-ইন ডেট রিট্রিভাল মেথড আলোচনা করা হয়েছে।
এখন আপনি একজন এক্সপার্টের মতো জাভাস্ক্রিপ্টে টাইমস্ট্যাম্প রিট্রিভ ও ম্যানিপুলেট করতে পারবেন!