如何将Date对象格式化为字符串?
当前回答
Javascript Intl.DateTimeFormat方法提供了一种格式化日期的方便方法。
以下是如何构建所需格式:
常量日期=新日期(“2010-08-10”);let d=新Intl.DateTimeFormat('en-GB',{年:“数字”,月:“短”,日:“2位数”}).format(日期).split(“”).join(“-”);console.log(d);
其他回答
对于任何想要复制、粘贴和采用真正简单的ES6解决方案的人来说:
const dateToString=d=>`${d.getFullYear()}-${('00'+(d.getMonth()+1)).slice(-2)}-${('0'+d.getDate()).spice(-2)}`//如何使用:const myDate=新日期(Date.parse('04 Dec 1995 00:12:00 GMT'))console.log(dateToString(myDate))//1995-12-04
使用date.format库:
var dateFormat = require('dateformat');
var now = new Date();
dateFormat(now, "dddd, mmmm dS, yyyy, h:MM:ss TT");
返回:
Saturday, June 9th, 2007, 5:46:21 PM
npm上的日期格式
http://jsfiddle.net/phZr7/1/
受到JD Smith奇妙的正则表达式解决方案的启发,我突然有了一个令人震惊的想法:
var D=Date().toString().split(“”);console.log(D[2]+“-”+D[1]+“-“+D[3]);
如果在代码中使用jQueryUI,则有一个内置函数,名为formatDate()。我用这种方式设置今天的日期:
var testdate = Date();
testdate = $.datepicker.formatDate( "d-M-yy",new Date(testdate));
alert(testdate);
在jQueryUI文档中可以看到许多其他格式化日期的示例。
我使用以下方法。它很简单,工作正常。
var dtFormat = require('dtformat');
var today = new Date();
dtFormat(today, "dddd, mmmm dS, yyyy, h:MM:ss TT");
或者这个:
var now = new Date()
months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
var formattedDate = now.getDate() + "-" + months[now.getMonth()] + "-" + now.getFullYear()
alert(formattedDate)