Event
ইন্টারফেসের timeStamp
বৈশিষ্ট্য একটি প্রদত্ত ইভেন্ট সংঘটিত হওয়ার সময় নির্দেশ করে।
49-এর আগের ক্রোমের সংস্করণগুলিতে, এই timeStamp
মানটিকে DOMTimeStamp
হিসাবে উপস্থাপন করা হয়েছিল, যা সিস্টেম যুগের পর থেকে মিলিসেকেন্ডের সম্পূর্ণ সংখ্যা ছিল, অনেকটা Date.now()
দ্বারা প্রত্যাবর্তিত মানের মতো।
Chrome 49 দিয়ে শুরু করে, timeStamp
হল একটি DOMHighResTimeStamp
মান। এই মানটি এখনও মিলিসেকেন্ডের একটি সংখ্যা, কিন্তু মাইক্রোসেকেন্ড রেজোলিউশনের সাথে, মানে মানটিতে একটি দশমিক উপাদান অন্তর্ভুক্ত থাকবে। অতিরিক্তভাবে, মানটি যুগের সাথে আপেক্ষিক হওয়ার পরিবর্তে, মানটি PerformanceTiming.navigationStart
এর সাথে আপেক্ষিক, অর্থাৎ ব্যবহারকারী যে সময়ে পৃষ্ঠায় নেভিগেট করেছে।
অতিরিক্ত সময় স্ট্যাম্প নির্ভুলতার সুবিধাগুলি এই উদাহরণগুলিতে দেখা যেতে পারে:
ক্রস ব্রাউজার এবং উত্তরাধিকার বিবেচনা
যদি আপনার কাছে বিদ্যমান কোড থাকে যা দুটি ইভেন্ট থেকে Event.timeStamp
মানের তুলনা করে, তাহলে DOMHighResTimeStamp
এ শিফট করার কারণে আপনাকে আপনার কোড সামঞ্জস্য করতে হবে না। তাছাড়া, DOMHighResTimeStamp
সমর্থন করে এমন ব্রাউজারগুলিতে, আপনার বিদ্যমান কোডটি মাইক্রোসেকেন্ডের বর্ধিত নির্ভুলতা থেকে উপকৃত হবে, সেইসাথে DOMHighResTimeStamp
একঘেয়ে বাড়ানোর গ্যারান্টি দেওয়া হয়েছে, আপনার ওয়েব পৃষ্ঠার সঞ্চালনের মাঝখানে সিস্টেম ঘড়ির পরিবর্তন হোক না কেন।
যদি, দুটি Event.timeStamp
মান তুলনা করার পরিবর্তে, আপনার কোডটি নির্ধারণ করতে হবে যে একটি ইভেন্ট কতদিন আগে ঘটেছে, নতুন DOMHighResTimeStamp
মানটি সরাসরি performance.now()
এর সাথে তুলনা করা যেতে পারে। এবং সিস্টেম যুগের পর থেকে যদি আপনাকে Event.timeStamp
কে সম্পূর্ণ সংখ্যক মিলিসেকেন্ডে রূপান্তর করতে হয়, তাহলে আপনি performance.timing.navigationStart
এ একটি DOMHighResTimeStamp
যোগ করে সেই মান পেতে পারেন।
এই উভয় ক্ষেত্রেই, DOMTimeStamp
এবং DOMHighResTimeStamp
ভিন্নভাবে আচরণ করে, কিন্তু আপনি মজিদ ভ্যালিপুরের সৌজন্যে এই রূপান্তর ফাংশনটি ব্যবহার করে আপনার ক্রস-ব্রাউজার কোড সহজ করতে পারেন। এটি একটি Event
অবজেক্টকে একটি প্যারামিটার হিসাবে নেয় এবং একটি DOMHighResTimeStamp
এর মতো মান প্রদান করে, যা performance.now()
এর সাথে তুলনা করার জন্য প্রস্তুত বা performance.timing.navigationStart
এ যোগ করা হয়।