在JavaScript中将date格式设置为MM / dd / yyyy

我有一个像这样的date格式'2010-10-11T00:00:00+05:30' 。 我必须使用JavaScript或jQuery格式化为MM/dd/yyyy 。 任何人都可以帮助我做到这一点。

尝试这个; 请记住,JavaScript月份是0-索引,而天数是1-indexed。

 var date = new Date('2010-10-11T00:00:00+05:30'); alert((date.getMonth() + 1) + '/' + date.getDate() + '/' + date.getFullYear()); 

所有其他答案不完全解决这个问题。 他们打印格式为mm / dd / yyyy的date,但问题是关于MM / dd / yyyy。 注意细微差别? MM表示如果月份是单个数字,则前导零必须填充月份,因此它始终是一个双位数字。

即mm / dd为3/31,MM / dd为03/31。

我已经创build了一个简单的function来实现这一点。 请注意,相同的填充不仅适用于月份,也适用于月份的date,实际上这是使用MM / DD / yyyy:

 function getFormattedDate(date) { var year = date.getFullYear(); var month = (1 + date.getMonth()).toString(); month = month.length > 1 ? month : '0' + month; var day = date.getDate().toString(); day = day.length > 1 ? day : '0' + day; return month + '/' + day + '/' + year; } 

你可以: .slice().split()

 var d = "2010-10-30T00:00:00+05:30".slice(0, 10).split('-'); d[1] +'/'+ d[2] +'/'+ d[0]; // 10/30/2010 

…或将您的string传递给Date对象

 var d = new Date("2010-10-30T00:00:00+05:30"); 

从这里您可以使用以下方法提取所需的内容:

 d.getMonth()+1 // 10 d.getDate() // 30 d.getFullYear() // 2010 

请注意, getMonth()返回基于的月份(0-11),因此需要+1

在这里您可以find其他获得者列表: https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date