यह जावास्क्रिप्ट में काम करता है
new Date()-new Date("2013-02-20T12:01:04.753Z")
लेकिन टाइपस्क्रिप्ट में मैं दो नए डेट्स को आराम नहीं दे सकता
Date("2013-02-20T12:01:04.753Z")
काम न करें क्योंकि paremater तिथि हस्ताक्षर से मेल नहीं खाता है
यह जावास्क्रिप्ट में काम करता है
new Date()-new Date("2013-02-20T12:01:04.753Z")
लेकिन टाइपस्क्रिप्ट में मैं दो नए डेट्स को आराम नहीं दे सकता
Date("2013-02-20T12:01:04.753Z")
काम न करें क्योंकि paremater तिथि हस्ताक्षर से मेल नहीं खाता है
जवाबों:
1970-01-01 के बाद से कुल मिलीसेकंड में समय पाने के लिए getTimeविधि का उपयोग करें , और उन्हें घटाएं:
var time = new Date().getTime() - new Date("2013-02-20T12:01:04.753Z").getTime();
new Date(1970, 1, 1, 0, 0, 0, 0).valueOf() // returns 2674800000 new Date(1970, 1, 1, 0, 0, 0, 0).getTime() // returns 2674800000
new Date().getTime()उपयोग Date.now()ताकि आप नई वस्तुओं को अनावश्यक रूप से नहीं बनाते हैं।
इस प्रकार इसे टाइपस्क्रिप्ट में किया जाना चाहिए:
(new Date()).valueOf() - (new Date("2013-02-20T12:01:04.753Z")).valueOf()
बेहतर पठनीयता:
var eventStartTime = new Date(event.startTime);
var eventEndTime = new Date(event.endTime);
var duration = eventEndTime.valueOf() - eventStartTime.valueOf();
eventStartTimeऔर eventEndTimeयह अवधि एक के रूप में टाइप हो जाती है number(मतलब यदि आप कोड की तीसरी पंक्ति को यहां अपने आप लेते हैं तो अवधि एक संख्या होगी)
यह काम नहीं करता है क्योंकि Date - Dateठीक उसी तरह के प्रकार पर निर्भर करता है जिस प्रकार के प्रकार के टाइपस्क्रिप्ट को रोकने के लिए डिज़ाइन किया गया है।
+उपसर्ग का उपयोग करते हुए एक वर्कअराउंड है :
var t = Date.now() - +(new Date("2013-02-20T12:01:04.753Z");
या, यदि आप उपयोग नहीं करना पसंद करते हैं Date.now() :
var t = +(new Date()) - +(new Date("2013-02-20T12:01:04.753Z"));
या, सिद्धार्थ सिंह के जवाब को देखें, नीचे और अधिक सुरुचिपूर्ण समाधान का उपयोग करने के लिए valueOf()
+ऑपरेटर को रखने के लिए आपको अंतर की गणना करने के लिए ,
इस तरह typescriptसे दिनांक संख्याओं में परिवर्तित हो जाते हैं।
+new Date()- +new Date("2013-02-20T12:01:04.753Z")
वहां से आप अंतर को minutesया में बदलने के लिए एक सूत्र बना सकते हैं hours।
// TypeScript
const today = new Date();
const firstDayOfYear = new Date(today.getFullYear(), 0, 1);
// Explicitly convert Date to Number
const pastDaysOfYear = ( Number(today) - Number(firstDayOfYear) );