मुझे जावास्क्रिप्ट में वर्तमान तिथि कैसे मिलेगी?
new Date()
वर्तमान समय लौटाता है , वर्तमान तिथि नहीं । यदि आप इसे किसी अन्य दिनांक के साथ तुलना करने की कोशिश कर रहे हैं जो समय घटक नहीं है (यानी, आधी रात को है)।
मुझे जावास्क्रिप्ट में वर्तमान तिथि कैसे मिलेगी?
new Date()
वर्तमान समय लौटाता है , वर्तमान तिथि नहीं । यदि आप इसे किसी अन्य दिनांक के साथ तुलना करने की कोशिश कर रहे हैं जो समय घटक नहीं है (यानी, आधी रात को है)।
जवाबों:
वर्तमान तिथि और समय युक्त new Date()
एक नई Date
वस्तु उत्पन्न करने के लिए उपयोग करें ।
var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();
today = mm + '/' + dd + '/' + yyyy;
document.write(today);
यह आपको आज की तारीख मिमी / डीडी / yyyy के प्रारूप में देगा।
today = mm +'/'+ dd +'/'+ yyyy;
आप जो भी प्रारूप चाहते हैं बस उसे बदल दें।
01
, 02
, ...,09
Date.prototype.toLocaleDateString()
विधि एक अधिक लचीला समाधान है। यह ECMAScript 5.1 के बाद से जावास्क्रिप्ट का एक हिस्सा है और सदाबहार ब्राउज़रों द्वारा अच्छी तरह से समर्थित है। एमडीएन:toLocaleDateString()
var utc = new Date().toJSON().slice(0,10).replace(/-/g,'/');
document.write(utc);
replace
यदि आप utc
वैरिएबल का पुन: उपयोग करने जा रहे हैं , जैसे new Date(utc)
कि फ़ायरफ़ॉक्स और सफारी डैश के साथ दिनांक को नहीं पहचानते हैं तो विकल्प का उपयोग करें ।
toUTCString()
utc डेटाटाइम के रूप में देता है।
moment( new Date().toJSON().slice(0, 10) )
अपडेट किया! , नीचे स्क्रॉल करें
यदि आप अंतिम उपयोगकर्ता के लिए कुछ सरल चाहते हैं ... Also, fixed a small suffix issue in the first version below. Now properly returns suffix.
var objToday = new Date(),
weekday = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'),
dayOfWeek = weekday[objToday.getDay()],
domEnder = function() { var a = objToday; if (/1/.test(parseInt((a + "").charAt(0)))) return "th"; a = parseInt((a + "").charAt(1)); return 1 == a ? "st" : 2 == a ? "nd" : 3 == a ? "rd" : "th" }(),
dayOfMonth = today + ( objToday.getDate() < 10) ? '0' + objToday.getDate() + domEnder : objToday.getDate() + domEnder,
months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'),
curMonth = months[objToday.getMonth()],
curYear = objToday.getFullYear(),
curHour = objToday.getHours() > 12 ? objToday.getHours() - 12 : (objToday.getHours() < 10 ? "0" + objToday.getHours() : objToday.getHours()),
curMinute = objToday.getMinutes() < 10 ? "0" + objToday.getMinutes() : objToday.getMinutes(),
curSeconds = objToday.getSeconds() < 10 ? "0" + objToday.getSeconds() : objToday.getSeconds(),
curMeridiem = objToday.getHours() > 12 ? "PM" : "AM";
var today = curHour + ":" + curMinute + "." + curSeconds + curMeridiem + " " + dayOfWeek + " " + dayOfMonth + " of " + curMonth + ", " + curYear;
document.getElementsByTagName('h1')[0].textContent = today;
<h1></h1>
UBBER UPDATE बहुत शिथिलता के बाद, मैंने आखिरकार GitHubbed की है और इसे अंतिम समाधान के साथ अद्यतन किया है जिसे मैं अपने लिए उपयोग कर रहा हूं। यहां तक कि इसे मीठा बनाने के लिए कुछ अंतिम मिनट के संपादन भी थे! यदि आप पुराने jsFiddle की तलाश कर रहे हैं , तो कृपया इसे देखें ।
यह अद्यतन 2 स्वादों में आता है, फिर भी अपेक्षाकृत छोटा है, हालांकि मेरे ऊपर, मूल उत्तर जितना छोटा नहीं है। यदि आप बहुत छोटा चाहते हैं, तो उसके साथ जाएं।
यह भी नोट करें: यह पल की तुलना में अभी भी कम फूला हुआ है। जबकि क्षण। Js अच्छा है, imo, इसमें बहुत से धर्मनिरपेक्ष तरीके हैं, जिन्हें सीखने के क्षण की आवश्यकता है जैसे कि यह एक भाषा थी। मेरा यहाँ PHP: तिथि के समान सामान्य प्रारूप का उपयोग किया जाता है ।
स्वाद 1
new Date().format(String)
मेरा व्यक्तिगत Fav। मैं टैबू जानता हूं लेकिन डेट ऑब्जेक्ट पर बहुत अच्छा काम करता है। बस आपको किसी अन्य मॉड के बारे में पता होना चाहिए जो आपके पास दिनांक ऑब्जेक्ट के लिए हो सकता है।
// use as simple as
new Date().format('m-d-Y h:i:s'); // 07-06-2016 06:38:34
स्वाद 2
dateFormat(Date, String)
अधिक पारंपरिक सभी में एक विधि। पहले की सभी क्षमता है, लेकिन डेट परम के साथ विधि के माध्यम से कहा जाता है।
// use as simple as
dateFormat(new Date(), 'm-d-Y h:i:s'); // 07-06-2016 06:38:34
बोनस स्वाद (jQuery की आवश्यकता है)
$.date(Date, String)
इसमें केवल एक सरलformat
विकल्प की तुलना में बहुत अधिक है । यह बेस डेट ऑब्जेक्ट का विस्तार करता है और इस तरह के तरीकों को शामिल करता हैaddDays
। अधिक जानकारी के लिए, कृपया देखें Git ।
इस मोड में, प्रारूप वर्ण PHP: तिथि से प्रेरित हैं । पूरी सूची के लिए, कृपया मेरा README देखें
इस मॉड में पहले से बने प्रारूपों की एक लंबी सूची है। प्रीमियर प्रारूप का उपयोग करने के लिए, बस उसका मुख्य नाम दर्ज करें।dateFormat(new Date(), 'pretty-a');
जैसा कि आप देख सकते हैं, आप \
एक चरित्र से बचने के लिए डबल का उपयोग कर सकते हैं ।
सबसे कम संभव है।
"2018-08-03" जैसे प्रारूप प्राप्त करने के लिए:
let today = new Date().toISOString().slice(0, 10)
console.log(today)
"8/3/2018" जैसे प्रारूप प्राप्त करने के लिए:
let today = new Date().toLocaleDateString()
console.log(today)
इसके अलावा, आप तर्क के रूप में लोकल पास कर सकते हैं , उदाहरण के लिए toLocaleDateString("sr")
, आदि।
यदि आप केवल समय की जानकारी के बिना तारीख चाहते हैं, तो उपयोग करें:
var today = new Date();
today.setHours(0, 0, 0, 0);
document.write(today);
इसे इस्तेमाल करे:
var currentDate = new Date()
var day = currentDate.getDate()
var month = currentDate.getMonth() + 1
var year = currentDate.getFullYear()
document.write("<b>" + day + "/" + month + "/" + year + "</b>")
परिणाम जैसा होगा
15/2/2012
यदि आप दिनांक स्वरूपों पर बहुत अधिक दानेदार नियंत्रण की तलाश कर रहे हैं, तो मैं अच्छी तरह से क्षणों की जांच करने की सलाह देता हूं। भयानक पुस्तकालय - और केवल 5KB। http://momentjs.com/
आप moment.js का उपयोग कर सकते हैं: http://momentjs.com/
var m = moment().format("DD/MM/YYYY");
document.write(m);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min.js"></script>
moment().format("L")
वर्तमान लोकेल का सम्मान करना है।
var d = (new Date()).toString().split(' ').splice(1,3).join(' ');
document.write(d)
इसे चरणों में तोड़ने के लिए:
(new Date()).toString()
"शुक्र जून 28 2013 15:30:18 GMT-0700 (PDT)"
(new Date()).toString().split(' ')
प्रत्येक स्थान पर उपरोक्त स्ट्रिंग को विभाजित करता है और एक सरणी देता है जैसे: ["शुक्र", "जून", "२,", "२०१३", "१५:३१:१४", "जीएमटी -० "००", "(पीडीटी)" ]
(new Date()).toString().split(' ').splice(1,3).join(' ')
उपरोक्त सरणी से दूसरा, तीसरा और चौथा मान लेता है, उन्हें रिक्त स्थान के साथ जोड़ता है, और एक स्ट्रिंग "जून 28 2013" लौटाता है
Date().split(' ').splice(1,3).join(' ')
यह हर बार काम करता है:
var now = new Date();
var day = ("0" + now.getDate()).slice(-2);
var month = ("0" + (now.getMonth() + 1)).slice(-2);
var today = now.getFullYear() + "-" + (month) + "-" + (day);
console.log(today);
var date = new Date().toLocaleDateString("en-US");
इसके अलावा, आप toLocaleDateString
दो मापदंडों के साथ विधि को कॉल कर सकते हैं :
var date = new Date().toLocaleDateString("en-US", {
"year": "numeric",
"month": "numeric"
});
new Date().toLocaleDateString("de-de")
मेरे लिए चाल है।
क्लीनर, सरल संस्करण:
new Date().toLocaleString();
उपयोगकर्ता के स्थान के अनुसार परिणाम भिन्न होता है :
2/27/2017, 9:15:41 पूर्वाह्न
यदि आप YYYY-MM-DD प्रारूप से खुश हैं, तो यह काम भी करेगा।
new Date().toISOString().split('T')[0]
2018-03-10
आप Date.js लाइब्रेरी का उपयोग कर सकते हैं जो दिनांक ऑब्जेक्ट को बढ़ाता है , इस प्रकार आपके पास .today () विधि हो सकती है।
आप वर्तमान तिथि को अब इस तरह से स्थिर विधि कह सकते हैं:
var now = Date.now()
संदर्भ:
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now
var dtToday = new Date(date.now);
वरुण का जवाब TimezoneOffset के लिए नहीं है । यहाँ एक संस्करण है जो करता है:
var d = new Date()
new Date(d.getTime() - d.getTimezoneOffset() * 60000).toJSON().slice(0, 10) // 2015-08-11
TimezoneOffset
जबकि दिनांक निर्माता मिलीसेकेंड, इस प्रकार से गुणा लेता मिनट है, 60000
।
सबसे छोटा उत्तर है: new Date().toJSON().slice(0,10)
new Date().toDateString();
परिणाम:
"बुध फरवरी 03 2016"
जैसा कि toISOString()
केवल वर्तमान यूटीसी समय लौटाएगा, स्थानीय समय नहीं। हमें yyyy-MM-dd
जैसे स्वरूप में दिनांक प्राप्त करने के लिए '.toString ()' फ़ंक्शन का उपयोग करके एक तारीख बनाना होगा
document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('T')[0]);
yyyy-MM-ddTHH:mm:ss
प्रारूप में दिनांक और समय प्राप्त करने के लिए
document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('.')[0]);
yyyy-MM-dd HH:mm:ss
प्रारूप में दिनांक और समय प्राप्त करने के लिए
document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('.')[0].replace('T',' '));
यदि आप एक सरल DD/MM/YYYY
प्रारूप चाहते हैं , तो मैं इस सरल समाधान के साथ आया हूं, हालांकि यह लापता शून्य को उपसर्ग नहीं करता है।
var d = new Date();
document.write( [d.getDate(), d.getMonth()+1, d.getFullYear()].join('/') );
new Date().toISOString().slice(0,10);
काम भी करेगा
नवीनतम संपादित करें: 8/23/19 तारीख-FNS पुस्तकालय ज्यादा की तरह काम करता moment.js लेकिन एक तरह से छोटे पदचिह्न है। यह आपको चेरी लेने देता है कि आप अपनी परियोजना में किन कार्यों को शामिल करना चाहते हैं ताकि आपको आज की तारीख को पूरा करने के लिए पूरे पुस्तकालय को संकलित न करना पड़े। यदि आपकी परियोजना के लिए एक न्यूनतम 3 पार्टी का काम विकल्प नहीं है, तो मैं सैमुअल मेडोइस द्वारा शीर्ष पर स्वीकृत समाधान का समर्थन करता हूं।
नीचे दिए गए इतिहास को संरक्षित करना क्योंकि इससे कुछ लोगों को मदद मिली। लेकिन रिकॉर्ड के लिए यह बिना किसी चेतावनी के तोड़ने के लिए बहुत आसान और उत्तरदायी है, क्योंकि इस पोस्ट पर अधिकांश समाधान हैं
EDIT 2/7/2017 एक लाइन जेएस समाधान:
IE10 + में tl; ड्र
var todaysDate = new Date(Date.now()).toLocaleString().slice(0,3).match(/[0-9]/i) ? new Date(Date.now()).toLocaleString().split(' ')[0].split(',')[0] : new Date(Date.now()).toLocaleString().split(' ')[1] + " " + new Date(Date.now()).toLocaleString().split(' ')[2] + " " + new Date(Date.now()).toLocaleString().split(' ')[3];
एज, ff लेटेस्ट, और क्रोम रिटर्नtodaysDate = "2/7/2017"
"वर्क्स" *
व्याख्या
मुझे पता चला कि IE10 और IE एज चीजों को थोड़ा अलग तरीके से करते हैं .. आंकड़ा। new Date(Date.now()).toLocaleString()
इनपुट के साथ ,
IE10 रिटर्न:
"Tuesday, February 07, 2017 2:58:25 PM"
मैं एक बड़ा लंबा फंक्शन और एफटीएफवाई लिख सकता था। लेकिन आप वास्तव में इस सामान के लिए क्षण का उपयोग करना चाहिए । मेरी स्क्रिप्ट केवल इसे साफ करती है और आपको विस्तारित पारंपरिक यूएस नोटेशन देती है:> todaysDate = "March 06, 2017"
IE धार रिटर्न:
"2/7/2017 2:59:27 PM"
बेशक यह इतना आसान नहीं हो सकता। एज की तारीख स्ट्रिंग में अदृश्य प्रत्येक दृश्य के बीच "•" अक्षर हैं। इसलिए न केवल अब हम जाँच करेंगे कि पहला वर्ण एक संख्या है, लेकिन पहले 3 वर्ण, क्योंकि यह पता चला है कि पूरी तिथि सीमा में कोई भी एक वर्ण अंततः किसी बिंदु पर एक डॉट या स्लेश होगा। इसलिए चीजों को सरल रखने के लिए, बस .slice () पहले तीन वर्णों (भविष्य के shenanigans के खिलाफ छोटे बफर) और फिर संख्याओं की जांच करें। यह संभवतः ध्यान दिया जाना चाहिए कि ये अदृश्य डॉट्स संभवतः आपके कोड में बने रह सकते हैं। अगर आप अपने दृष्टिकोण को इस स्ट्रिंग को प्रिंट करने की तुलना में बड़ी योजनाएं प्राप्त कर चुके हैं, तो मैं शायद इसमें खुदाई करूंगा।
∴ अपडेटेड वन-लाइनर:
var todaysDate = new Date(Date.now()).toLocaleString().slice(0,3).match(/[0-9]/i) ? new Date(Date.now()).toLocaleString().split(' ')[0].split(',')[0] : new Date(Date.now()).toLocaleString().split(' ')[1] + " " + new Date(Date.now()).toLocaleString().split(' ')[2] + " " + new Date(Date.now()).toLocaleString().split(' ')[3];
जो कि पढ़ने के लिए बेकार है। कैसा रहेगा:
var dateString = new Date(Date.now()).toLocaleString();
var todaysDate = dateString.slice(0,3).match(/[0-9]/i) ? dateString.split(' ')[0].split(',')[0] : dateString.split(' ')[1] + " " + dateString.split(' ')[2] + " " + dateString.split(' ')[3];
मूल ANSWER
मुझे आपके लिए वन-लाइनर मिल गया है:
new Date(Date.now()).toLocaleString().split(', ')[0];
और [1]
आप दिन का समय देंगे।
आप इसका उपयोग कर सकते हैं
<script>
function my_curr_date() {
var currentDate = new Date()
var day = currentDate.getDate();
var month = currentDate.getMonth() + 1;
var year = currentDate.getFullYear();
var my_date = month+"-"+day+"-"+year;
document.getElementById("dateField").value=my_date;
}
</script>
HTML है
<body onload='return my_curr_date();'>
<input type='text' name='dateField' id='dateField' value='' />
</body>
यदि आप jQuery का उपयोग कर रहे हैं। इस एक लाइनर का प्रयास करें:
$.datepicker.formatDate('dd/mm/yy', new Date());
यहाँ दिनांक को प्रारूपित करने के लिए सम्मेलन है
यहाँ jQuery दिनांक के लिए संदर्भ है
उस बंद को खींचने का एक कठिन तरीका है (अपने वर्तमान समय क्षेत्र पर विचार करते हुए यह आईएसओ yyyy-mm-dd प्रारूप का लाभ उठाता है):
let d = new Date().toISOString().substring(0,19).replace("T"," ") // "2020-02-18 16:41:58"
आमतौर पर, यह एक बहुत ही सर्व-प्रयोजन संगत तारीख प्रारूप है और यदि आवश्यक हो तो आप इसे शुद्ध तिथि मान में बदल सकते हैं:
Date.parse(d); // 1582044297000
इससे बड़ी बात क्या है .. ऐसा करने का सबसे साफ तरीका है
var currentDate=new Date().toLocaleString().slice(0,10);
3/4/2018,
, उपयोग करने के लिए बेहतर होगा new Date().toJSON().slice(0,10)
।
.slice(0,10)
यह आपकी मदद कर सकता है
var date = new Date();
console.log(date.getDate()+'/'+(date.getMonth()+1)+'/'+date.getFullYear());
यह dd / MM / yyyy प्रारूप में वर्तमान तिथि प्रिंट करेगा
यह फॉर्मेट की गई तारीख पाने के लिए अच्छा है
let date = new Date().toLocaleDateString("en", {year:"numeric", day:"2-digit", month:"2-digit"});
console.log(date);
मुझे लगता है कि यह एक पुराना सवाल है लेकिन सबसे आसान तरीका निम्नलिखित होगा:
var date = new Date();
var TimeStamp = date.toLocaleString();
function CurrentTime(){
alert(TimeStamp);
}
यह वर्तमान समय को हड़प लेगा, इसे स्थान के आधार पर स्ट्रिंग में पास कर देगा और फिर आप समय प्रदर्शित करने के लिए फ़ंक्शन को वर्तमान समय कह सकते हैं। यह मेरे लिए होगा, किसी चीज के लिए टाइम स्टैम्प पाने का सबसे प्रभावी तरीका।
var currentTime = new Date();