खोज…


वाक्य - विन्यास

  • नई तारीख़();
  • नई तारीख (मूल्य);
  • नई तिथि (dateAsString);
  • नई तिथि (वर्ष, महीना [, दिन [, घंटा], मिनट [, दूसरा [, मिलीसेकंड]]]]]];

पैरामीटर

पैरामीटर विवरण
value 1 जनवरी 1970 के बाद से मिलीसेकंड की संख्या 00: 00: 00.000 UTC (यूनिक्स युग)
dateAsString एक स्ट्रिंग के रूप में स्वरूपित तिथि (अधिक जानकारी के लिए उदाहरण देखें)
year तिथि का वर्ष मान। ध्यान दें कि उस month भी प्रदान किया जाना चाहिए, या मूल्य को कई मिलीसेकंड के रूप में व्याख्या किया जाएगा। यह भी ध्यान दें कि 0 और 99 बीच का मान विशेष अर्थ रखता है। उदाहरण देखें।
month महीने, 0-11 की रेंज में। ध्यान दें कि इसके लिए निर्दिष्ट सीमा से बाहर के मूल्यों का उपयोग करने और निम्नलिखित मापदंडों के परिणामस्वरूप त्रुटि नहीं होगी, बल्कि परिणामी तिथि को अगले मूल्य पर "रोल ओवर" करने का कारण होगा। उदाहरण देखें।
day वैकल्पिक: दिनांक, 1-31 की श्रेणी में।
hour वैकल्पिक: घंटे 0-23 की सीमा में।
minute वैकल्पिक: 0-59 की रेंज में मिनट।
second वैकल्पिक: दूसरा, 0-59 की सीमा में।
millisecond वैकल्पिक: 0-999 की रेंज में मिलीसेकंड।

वर्तमान समय और दिनांक प्राप्त करें

new Date() का उपयोग करें एक नई Date ऑब्जेक्ट उत्पन्न करने के लिए जिसमें वर्तमान दिनांक और समय है।

ध्यान दें कि तर्कों के बिना Date() new Date(Date.now()) बराबर है

एक बार जब आपके पास एक दिनांक ऑब्जेक्ट होता है, तो आप इसके गुणों को निकालने के लिए कई उपलब्ध तरीकों में से कोई भी लागू कर सकते हैं (उदाहरण के लिए getFullYear() 4-अंक वर्ष प्राप्त करने के लिए)।

नीचे कुछ सामान्य तरीके दिए गए हैं।

वर्तमान वर्ष प्राप्त करें

var year = (new Date()).getFullYear();
console.log(year);
// Sample output: 2016 

वर्तमान माह प्राप्त करें

var month = (new Date()).getMonth();
console.log(month);
// Sample output: 0 

कृपया ध्यान दें कि 0 = जनवरी। ऐसा इसलिए है क्योंकि महीने 0 से 11 तक होते हैं , इसलिए अक्सर इंडेक्स में +1 जोड़ना वांछनीय है।

वर्तमान दिन प्राप्त करें

var day = (new Date()).getDate();
console.log(day);
// Sample output: 31

वर्तमान समय प्राप्त करें

var hours = (new Date()).getHours();
console.log(hours);
// Sample output: 10

वर्तमान मिनट प्राप्त करें

var minutes = (new Date()).getMinutes();
console.log(minutes);
// Sample output: 39

वर्तमान सेकंड प्राप्त करें

var seconds = (new Date()).getSeconds();
console.log(second);
// Sample output: 48

वर्तमान मिलीसेकंड प्राप्त करें

किसी Date ऑब्जेक्ट की आवृत्ति के मिलीसेकंड (0 से 999 तक) प्राप्त करने के लिए, इसके getMilliseconds विधि का उपयोग करें।

var milliseconds = (new Date()).getMilliseconds();
console.log(milliseconds);
 // Output: milliseconds right now

वर्तमान समय और दिनांक को मानव-पठनीय स्ट्रिंग में बदलें

var now = new Date();
// convert date to a string in UTC timezone format:
console.log(now.toUTCString());
// Output: Wed, 21 Jun 2017 09:13:01 GMT

स्थैतिक विधि Date.now() 1 जनवरी 1970 00:00:00 UTC के बाद से मिले हुए मिलीसेकंड की संख्या लौटाता है। किसी Date ऑब्जेक्ट की आवृत्ति का उपयोग करते हुए उस समय के बाद से मिली मिलीसेकंड की संख्या प्राप्त करने के लिए, इसके getTime विधि का उपयोग करें।

// get milliseconds using static method now of Date
console.log(Date.now());

// get milliseconds using method getTime of Date instance
console.log((new Date()).getTime());

एक नई दिनांक ऑब्जेक्ट बनाएँ

नई Date ऑब्जेक्ट बनाने के लिए Date() निर्माता का उपयोग करें:

  • कोई तर्क नहीं है

    Date() वर्तमान समय (मिलीसेकंड तक) और दिनांक वाले Date उदाहरण बनाता है।

  • एक पूर्णांक तर्क के साथ

    Date(m) एक Date उदाहरण बनाता है जिसमें युग और समय (1 जनवरी, 1970 UTC) और m मिलीसेकंड के अनुरूप तिथि होती है। उदाहरण: new Date(749019369738) तारीख देता है सूर्य, २६ सितंबर १ ९९ ३ ०४:०४:09 जीएमटी

  • एक स्ट्रिंग तर्क के साथ

    Date(dateString) Date ऑब्जेक्ट जो Date . dateString साथ Date.parse पार्स करने के बाद Date.parse

  • दो या अधिक पूर्णांक तर्क के साथ

    Date(i1, i2, i3, i4, i5, i6) वर्ष, महीने, दिन, घंटे, मिनट, सेकंड, मिलीसेकंड के रूप में तर्कों को पढ़ता है और इसी Date ऑब्जेक्ट को तात्कालिक करता है। ध्यान दें कि जावास्क्रिप्ट में महीना 0-अनुक्रमित है, इसलिए 0 का मतलब जनवरी और 11 का मतलब दिसंबर है। उदाहरण: new Date(2017, 5, 1) जून, 2017 को देती है


तलाश की तारीखें

ध्यान दें कि इन उदाहरणों को डेलाइट टाइम के दौरान, यूएस के सेंट्रल टाइम ज़ोन के एक ब्राउजर पर कोड के द्वारा स्पष्ट किया गया था। जहाँ UTC के साथ तुलनात्मक निर्देशात्मक था, Date.prototype.toISOString() का उपयोग UTC में दिनांक और समय दिखाने के लिए किया गया था (स्वरूपित स्ट्रिंग Z को UTC में दर्शाया गया है)।

// Creates a Date object with the current date and time from the 
// user's browser
var now = new Date();
now.toString() === 'Mon Apr 11 2016 16:10:41 GMT-0500 (Central Daylight Time)' 
// true
// well, at the time of this writing, anyway

// Creates a Date object at the Unix Epoch (i.e., '1970-01-01T00:00:00.000Z')
var epoch = new Date(0);
epoch.toISOString() === '1970-01-01T00:00:00.000Z' // true

// Creates a Date object with the date and time 2,012 milliseconds 
// after the Unix Epoch (i.e., '1970-01-01T00:00:02.012Z').
var ms = new Date(2012); 
date2012.toISOString() === '1970-01-01T00:00:02.012Z' // true

// Creates a Date object with the first day of February of the year 2012 
// in the local timezone.
var one = new Date(2012, 1);
one.toString() === 'Wed Feb 01 2012 00:00:00 GMT-0600 (Central Standard Time)' 
// true

// Creates a Date object with the first day of the year 2012 in the local 
// timezone.
// (Months are zero-based) 
var zero = new Date(2012, 0);
zero.toString() === 'Sun Jan 01 2012 00:00:00 GMT-0600 (Central Standard Time)' 
// true

// Creates a Date object with the first day of the year 2012, in UTC.
var utc = new Date(Date.UTC(2012, 0));
utc.toString() === 'Sat Dec 31 2011 18:00:00 GMT-0600 (Central Standard Time)'
// true
utc.toISOString() === '2012-01-01T00:00:00.000Z'
// true

// Parses a string into a Date object (ISO 8601 format added in ECMAScript 5.1)
// Implementations should assumed UTC because of ISO 8601 format and Z designation
var iso = new Date('2012-01-01T00:00:00.000Z');
iso.toISOString() === '2012-01-01T00:00:00.000Z' // true

// Parses a string into a Date object (RFC in JavaScript 1.0)
var local = new Date('Sun, 01 Jan 2012 00:00:00 -0600');
local.toString() === 'Sun Jan 01 2012 00:00:00 GMT-0600 (Central Standard Time)'
// true

// Parses a string in no particular format, most of the time. Note that parsing
// logic in these cases is very implementation-dependent, and therefore can vary
// across browsers and versions.
var anything = new Date('11/12/2012'); 
anything.toString() === 'Mon Nov 12 2012 00:00:00 GMT-0600 (Central Standard Time)'
// true, in Chrome 49 64-bit on Windows 10 in the en-US locale. Other versions in 
// other locales may get a different result.

// Rolls values outside of a specified range to the next value.
var rollover = new Date(2012, 12, 32, 25, 62, 62, 1023);
rollover.toString() === 'Sat Feb 02 2013 02:03:03 GMT-0600 (Central Standard Time)'
// true; note that the month rolled over to Feb; first the month rolled over to 
// Jan based on the month 12 (11 being December), then again because of the day 32
// (January having 31 days).

// Special dates for years in the range 0-99
var special1 = new Date(12, 0);
special1.toString() === 'Mon Jan 01 1912 00:00:00 GMT-0600 (Central Standard Time)`
// true

// If you actually wanted to set the year to the year 12 CE, you'd need to use the
// setFullYear() method:
special1.setFullYear(12);
special1.toString() === 'Sun Jan 01   12 00:00:00 GMT-0600 (Central Standard Time)`
// true

JSON में कनवर्ट करें

var date1 = new Date();
date1.toJSON();

रिटर्न: "2016-04-14T23: 49: 08.596Z"

UTC से दिनांक बनाना

डिफ़ॉल्ट रूप से, Date ऑब्जेक्ट को स्थानीय समय के रूप में बनाया जाता है। यह हमेशा वांछनीय नहीं होता है, उदाहरण के लिए जब एक सर्वर और एक क्लाइंट के बीच की तारीख को संवाद करते हैं जो एक ही टाइमज़ोन में नहीं रहते हैं। इस परिदृश्य में, कोई भी टाइमज़ोन के बारे में चिंता नहीं करना चाहता है जब तक कि स्थानीय समय में तारीख को प्रदर्शित करने की आवश्यकता नहीं होती है, यदि वह सभी के लिए भी आवश्यक है।

समस्या

इस समस्या में हम एक विशिष्ट तिथि (दिन, माह, वर्ष) को किसी अलग समयक्षेत्र में किसी के साथ संवाद करना चाहते हैं। पहला कार्यान्वयन स्थानीय समय का उपयोग करता है, जिसके परिणामस्वरूप गलत परिणाम सामने आते हैं। दूसरे कार्यान्वयन यूटीसी तिथियों का उपयोग टाइमज़ोन से बचने के लिए करते हैं जहां उनकी आवश्यकता नहीं है।

गलत परिणामों के साथ भोली दृष्टिकोण

function formatDate(dayOfWeek, day, month, year) {
  var daysOfWeek = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
  var months = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
  return daysOfWeek[dayOfWeek] + " " + months[month] + " " + day + " " + year;
}

//Foo lives in a country with timezone GMT + 1
var birthday = new Date(2000,0,1);
console.log("Foo was born on: " + formatDate(birthday.getDay(), birthday.getDate(),
      birthday.getMonth(), birthday.getFullYear()));

sendToBar(birthday.getTime());

नमूना आउटपुट: Foo was born on: Sat Jan 1 2000

//Meanwhile somewhere else...

//Bar lives in a country with timezone GMT - 1
var birthday = new Date(receiveFromFoo());
console.log("Foo was born on: " + formatDate(birthday.getDay(), birthday.getDate(),
      birthday.getMonth(), birthday.getFullYear()));

नमूना उत्पादन: Foo was born on: Fri Dec 31 1999

और इस तरह, बार हमेशा विश्वास करेगा कि फू का जन्म 1999 के अंतिम दिन हुआ था।

सही दृष्टिकोण

function formatDate(dayOfWeek, day, month, year) {
  var daysOfWeek = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
  var months = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
  return daysOfWeek[dayOfWeek] + " " + months[month] + " " + day + " " + year;
}

//Foo lives in a country with timezone GMT + 1
var birthday = new Date(Date.UTC(2000,0,1));
console.log("Foo was born on: " + formatDate(birthday.getUTCDay(), birthday.getUTCDate(),
      birthday.getUTCMonth(), birthday.getUTCFullYear()));

sendToBar(birthday.getTime());

नमूना आउटपुट: Foo was born on: Sat Jan 1 2000

//Meanwhile somewhere else...

//Bar lives in a country with timezone GMT - 1
var birthday = new Date(receiveFromFoo());
console.log("Foo was born on: " + formatDate(birthday.getUTCDay(), birthday.getUTCDate(), 
      birthday.getUTCMonth(), birthday.getUTCFullYear()));

नमूना आउटपुट: Foo was born on: Sat Jan 1 2000

UTC से दिनांक बनाना

यदि कोई UTC या GMT पर आधारित Date ऑब्जेक्ट बनाना चाहता है, तो Date.UTC(...) विधि का उपयोग किया जा सकता है। यह सबसे लंबे Date कंस्ट्रक्टर के रूप में एक ही तर्क का उपयोग करता है। यह विधि 1 जनवरी, 1970, 00:00:00 यूटीसी के बाद से पारित होने वाले समय का प्रतिनिधित्व करते हुए एक नंबर देगी।

console.log(Date.UTC(2000,0,31,12));

नमूना उत्पादन: 949320000000

var utcDate = new Date(Date.UTC(2000,0,31,12));
console.log(utcDate);

नमूना उत्पादन: Mon Jan 31 2000 13:00:00 GMT+0100 (West-Europa (standaardtijd))

अप्रत्याशित रूप से, यूटीसी समय और स्थानीय समय के बीच का अंतर वास्तव में, समयक्षेत्र ऑफसेट मिलीसेकंड में बदल गया है।

var utcDate = new Date(Date.UTC(2000,0,31,12));
var localDate = new Date(2000,0,31,12);

console.log(localDate - utcDate === utcDate.getTimezoneOffset() * 60 * 1000);

नमूना उत्पादन: true

दिनांक ऑब्जेक्ट बदलना

सभी Date ऑब्जेक्ट संशोधक, जैसे कि setDate(...) और setFullYear(...) समतुल्य स्थानीय समय के बजाय UTC समय में एक तर्क लेता है।

var date = new Date();
date.setUTCFullYear(2000,0,31);
date.setUTCHours(12,0,0,0);
console.log(date);

नमूना उत्पादन: Mon Jan 31 2000 13:00:00 GMT+0100 (West-Europa (standaardtijd))

अन्य UTC- विशिष्ट संशोधक हैं .setUTCMonth() , .setUTCDate() (महीने के दिन के लिए), .setUTCMinutes() , .setUTCSeconds() और .setUTCMilliseconds()

गेटटाइम () और सेटटाइम () के साथ अस्पष्टता से बचना

जहां तिथियों में अस्पष्टता के बीच अंतर करने के लिए उपरोक्त तरीकों की आवश्यकता होती है, आमतौर पर दिनांक को संवाद करना आसान होता है क्योंकि 1 जनवरी, 1970, 00:00:00 यूटीसी के बाद से कितना समय बीत चुका है। यह एकल संख्या समय में एक बिंदु का प्रतिनिधित्व करती है, और जब भी आवश्यक हो, स्थानीय समय में परिवर्तित किया जा सकता है।

var date = new Date(Date.UTC(2000,0,31,12));
var timestamp = date.getTime();
//Alternatively
var timestamp2 = Date.UTC(2000,0,31,12);
console.log(timestamp === timestamp2);

नमूना उत्पादन: true

//And when constructing a date from it elsewhere...
var otherDate = new Date(timestamp);

//Represented as an universal date
console.log(otherDate.toUTCString());
//Represented as a local date
console.log(otherDate);

नमूना उत्पादन:

Mon, 31 Jan 2000 12:00:00 GMT
Mon Jan 31 2000 13:00:00 GMT+0100 (West-Europa (standaardtijd))

एक स्ट्रिंग प्रारूप में परिवर्तित करें

स्ट्रिंग में कनवर्ट करें

var date1 = new Date();
date1.toString();

रिटर्न: "शुक्र अप्रैल 15 2016 07:48:48 GMT-0400 (पूर्वी डेलाइट समय)"


समय स्ट्रिंग में कनवर्ट करें

var date1 = new Date();
date1.toTimeString();

रिटर्न: "07:48:48 GMT-0400 (पूर्वी डेलाइट समय)"


दिनांक स्ट्रिंग में कनवर्ट करें

var date1 = new Date();
date1.toDateString();

रिटर्न: "थू अप्रैल 14 2016"


यूटीसी स्ट्रिंग में परिवर्तित करें

var date1 = new Date();
date1.toUTCString();

रिटर्न: "शुक्र, 15 अप्रैल 2016 11:48:48 GMT"


आईएसओ स्ट्रिंग में कनवर्ट करें

var date1 = new Date();
date1.toISOString();

रिटर्न: "2016-04-14T23: 49: 08.596Z"


GMT स्ट्रिंग में कनवर्ट करें

var date1 = new Date();
date1.toGMTString();

रिटर्न: "गुरु, 14 अप्रैल 2016 23:49:08 GMT"

इस फ़ंक्शन को पदावनत के रूप में चिह्नित किया गया है ताकि भविष्य में कुछ ब्राउज़र इसका समर्थन न करें। इसके स्थान पर toUTCString () का उपयोग करने का सुझाव दिया गया है।


स्थान दिनांक स्ट्रिंग में कनवर्ट करें

var date1 = new Date();
date1.toLocaleDateString();

रिटर्न: "4/14/2016"

यह फ़ंक्शन डिफ़ॉल्ट रूप से उपयोगकर्ता के स्थान के आधार पर एक स्थानीय संवेदनशील तारीख स्ट्रिंग लौटाता है।

date1.toLocaleDateString([locales [, options]])

विशिष्ट स्थानों को प्रदान करने के लिए इस्तेमाल किया जा सकता है, लेकिन ब्राउज़र कार्यान्वयन विशिष्ट है। उदाहरण के लिए,

date1.toLocaleDateString(["zh", "en-US"]);

चीनी भाषा में स्ट्रिंग को प्रिंटबैक के रूप में यूनाइटेड स्टेट्स इंग्लिश का उपयोग करके प्रिंट करने का प्रयास करेंगे। विकल्प पैरामीटर का उपयोग विशिष्ट स्वरूपण प्रदान करने के लिए किया जा सकता है। उदाहरण के लिए:

var options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
date1.toLocaleDateString([], options);

में परिणाम होगा

"गुरुवार, 14 अप्रैल, 2016"।

अधिक जानकारी के लिए MDN देखें।

एक तिथि वस्तु वृद्धि

जावास्क्रिप्ट में दिनांक वस्तुओं को बढ़ाने के लिए, हम आमतौर पर ऐसा कर सकते हैं:

var checkoutDate = new Date();    // Thu Jul 21 2016 10:05:13 GMT-0400 (EDT)

checkoutDate.setDate( checkoutDate.getDate() + 1 );

console.log(checkoutDate); // Fri Jul 22 2016 10:05:13 GMT-0400 (EDT)

वर्तमान माह में दिनों की संख्या से अधिक मूल्य का उपयोग करके अगले महीने में तारीख को दिन में बदलने के लिए setDate का उपयोग करना संभव है -

var checkoutDate = new Date();    // Thu Jul 21 2016 10:05:13 GMT-0400 (EDT)
checkoutDate.setDate( checkoutDate.getDate() + 12 );
console.log(checkoutDate); // Tue Aug 02 2016 10:05:13 GMT-0400 (EDT)

यही अन्य तरीकों जैसे कि getHours (), getMonth (), आदि के लिए भी लागू होता है।

कार्य दिवस जोड़ना

यदि आप काम के दिनों को जोड़ना चाहते हैं (इस मामले में मैं सोमवार - शुक्रवार को मान रहा हूं) तो आप setDate फ़ंक्शन का उपयोग कर सकते हैं, हालांकि आपको सप्ताहांत के लिए खाते के लिए थोड़े अतिरिक्त तर्क की आवश्यकता है (जाहिर है कि यह राष्ट्रीय छुट्टियों का ध्यान नहीं रखेगा) -

function addWorkDays(startDate, days) {
    // Get the day of the week as a number (0 = Sunday, 1 = Monday, .... 6 = Saturday)
    var dow = startDate.getDay();
    var daysToAdd = days;
    // If the current day is Sunday add one day
    if (dow == 0)
        daysToAdd++;
    // If the start date plus the additional days falls on or after the closest Saturday calculate weekends
    if (dow + daysToAdd >= 6) {
        //Subtract days in current working week from work days
        var remainingWorkDays = daysToAdd - (5 - dow);
        //Add current working week's weekend
        daysToAdd += 2;
        if (remainingWorkDays > 5) {
            //Add two days for each working week by calculating how many weeks are included
            daysToAdd += 2 * Math.floor(remainingWorkDays / 5);
            //Exclude final weekend if remainingWorkDays resolves to an exact number of weeks
            if (remainingWorkDays % 5 == 0)
                daysToAdd -= 2;
        }
    }
    startDate.setDate(startDate.getDate() + daysToAdd);
    return startDate;
}

1 जनवरी 1970 00:00:00 UTC के बाद से मिलीसेकंड की संख्या प्राप्त करें

स्थिर विधि Date.now 1 जनवरी 1970 00:00:00 UTC के बाद से मिले मिलीसेकंड की संख्या लौटाता है। किसी Date ऑब्जेक्ट की आवृत्ति का उपयोग करते हुए उस समय के बाद से मिली मिलीसेकंड की संख्या प्राप्त करने के लिए, इसके getTime विधि का उपयोग करें।

// get milliseconds using static method now of Date
console.log(Date.now());

// get milliseconds using method getTime of Date instance
console.log((new Date()).getTime());

एक जावास्क्रिप्ट दिनांक स्वरूपण

आधुनिक ब्राउज़रों में एक जावास्क्रिप्ट दिनांक स्वरूपण

आधुनिक ब्राउज़रों (*) में, Date.prototype.toLocaleDateString() आपको एक सुविधाजनक तरीके से Date के प्रारूप को परिभाषित करने की अनुमति देता है।

इसके लिए निम्न प्रारूप की आवश्यकता है:

dateObj.toLocaleDateString([locales [, options]])

locales पैरामीटर को BCP 47 भाषा टैग या ऐसी स्ट्रिंग की एक सरणी के साथ होना चाहिए।

options पैरामीटर कुछ या सभी निम्न गुणों के साथ एक वस्तु होना चाहिए:

  • localeMatcher : संभव मान "lookup" और "best fit" ; डिफ़ॉल्ट "best fit"
  • टाइमजोन : केवल मूल्य कार्यान्वयन को पहचानना होगा "UTC" ; डिफ़ॉल्ट रनटाइम का डिफ़ॉल्ट समय क्षेत्र है
  • घंटे 12 : संभावित मूल्य true और false ; डिफ़ॉल्ट स्थानीय निर्भर है
  • formatMatcher : संभव मान "basic" और "best fit" ; डिफ़ॉल्ट "best fit"
  • कार्यदिवस : संभव मान "narrow" , "short" और "long"
  • युग : संभावित मूल्य "narrow" , "short" और "long"
  • वर्ष : संभव मान "numeric" और "2-digit"
  • महीना : संभव मान "numeric" , "2-digit" , "narrow" , "short" और "long"
  • दिन : संभव मान "numeric" और "2-digit"
  • घंटे : संभव मान "numeric" और "2-digit"
  • मिनट : संभव मान "numeric" और "2-digit"
  • दूसरा : संभव मान "numeric" और "2-digit"
  • समयजोन नाम : संभव मान "short" और "long"

कैसे इस्तेमाल करे

var today = new Date().toLocaleDateString('en-GB', {  
    day : 'numeric',
    month : 'short',
    year : 'numeric'
});

जनवरी 24 if, 2036 को निष्पादित होने पर आउटपुट:

'24 Jan 2036'

रिवाज जा रहा है

यदि Date.prototype.toLocaleDateString() जो कुछ भी आपकी ज़रूरत हो उसे पूरा करने के लिए पर्याप्त लचीला नहीं है, तो आप एक कस्टम दिनांक ऑब्जेक्ट बनाने पर विचार कर सकते हैं जो इस तरह दिखता है:

var DateObject = (function() {
    var monthNames = [
      "January", "February", "March",
      "April", "May", "June", "July",
      "August", "September", "October",
      "November", "December"
    ];
    var date = function(str) {
        this.set(str);
    };
    date.prototype = {
        set : function(str) {
            var dateDef = str ? new Date(str) : new Date();
            this.day = dateDef.getDate();
            this.dayPadded = (this.day < 10) ? ("0" + this.day) : "" + this.day;
            this.month = dateDef.getMonth() + 1;
            this.monthPadded = (this.month < 10) ? ("0" + this.month) : "" + this.month;
            this.monthName = monthNames[this.month - 1];
            this.year = dateDef.getFullYear();
        },
        get : function(properties, separator) {
            var separator = separator ? separator : '-'
                ret = [];
            for(var i in properties) {
                ret.push(this[properties[i]]);
            }
            return ret.join(separator);
        }
    };
    return date;
})();

यदि आपने उस कोड को शामिल किया है और जनवरी 20, 2019 को new DateObject() निष्पादित किया है, तो यह निम्नलिखित गुणवत्ता के साथ एक वस्तु का उत्पादन करेगा:

day: 20
dayPadded: "20"
month: 1
monthPadded: "01"
monthName: "January"
year: 2019

स्वरूपित स्ट्रिंग प्राप्त करने के लिए, आप ऐसा कुछ कर सकते हैं:

new DateObject().get(['dayPadded', 'monthPadded', 'year']);

यह निम्न आउटपुट का उत्पादन करेगा:

20-01-2016

(*) MDN के अनुसार , "आधुनिक ब्राउज़र" का अर्थ है क्रोम 24+, फ़ायरफ़ॉक्स 29+, IE11, Edge12 +, ओपेरा 15+ और सफारी रात का निर्माण।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow