日期格式javascript

日期格式javascript,javascript,jquery,date,Javascript,Jquery,Date,下面的脚本以这种格式返回日期: 2011年4月21日星期五12:18:25 GMT+0200 2011年4月22日星期五12:18:25 GMT+0200 2011年4月29日星期五12:18:25 GMT+0200 我的问题是:如何以这种格式获取日期: 年/月/日:2001年4月21日 function addDays(dateObj, numDays) { dateObj.setDate(dateObj.getDate() + numDays); return dateObj;

下面的脚本以这种格式返回日期:

2011年4月21日星期五12:18:25 GMT+0200

2011年4月22日星期五12:18:25 GMT+0200

2011年4月29日星期五12:18:25 GMT+0200

我的问题是:如何以这种格式获取日期:

年/月/日:2001年4月21日

function addDays(dateObj, numDays) {
   dateObj.setDate(dateObj.getDate() + numDays);
   return dateObj;
}
var now = new Date();
var tomorrow = addDays(new Date(), 1);
var nextWeek = addDays(new Date(), 8);

    {
jQuery("input[id*='now']").val(now);
jQuery("input[id*='tomorrow']").val(tomorrow);
jQuery("input[id*='nextweek']").val(nextWeek);
    }

您可以将其包装或使用现有的帮助程序之一

我建议您可以使用Steve Levithan的dateformat脚本:

纯Javascript:

function dmy(d) {

    function pad2(n) {
        return (n < 10) ? '0' + n : n;
    }

    return pad2(d.getUTCDate()) + '/' + 
           pad2(d.getUTCMonth() + 1) + '/' +
           d.getUTCFullYear();
}
函数dmy(d){
功能pad2(n){
返回(n<10)‘0’+n:n;
}
返回pad2(d.getUTCDate())+'/'+
pad2(d.getUTCMonth()+1)+'/'+
d、 getUTCFullYear();
}
var date=新日期();
var d=date.getDate();
风险值日=(d<10)?'0'+d:d;
var m=date.getMonth()+1;
风险值月份=(m<10)?'0'+m:m;
var yy=date.getYear();
风险年=(年<1000)?yy+1900:yy;
警报(日+“/”+月+“/”+年);

试试这个。

使用普通的旧JavaScript,类似这样的东西应该可以工作:

var formatDateString = function(s) {
  var pad = function(x) { return ((x.length<2) ? "0" : "") + x; }
    , dt = new Date("" + s), d, m, y;
  if (dt.getTime()) {
    d = pad(dt.getDate());
    m = pad(dt.getMonth()+1);
    y = dt.getFullYear();
    return [d, m, y].join('/');
  }
  return null;
};
formatDateString("Fri Apr 21 2011 12:18:25 GMT+0200"); // => "21/04/2011"
var formatDateString=函数{
var pad=函数(x){返回((x.length“21/04/2011”
看看!这是一个非常强大的小库,可以在JavaScript中处理日期

var today = moment(new Date());
today.format("D/M/YYYY");                  // "4/11/2012"
today.format("MMMM D, YYYY h:m A");        // outputs "April 11, 2012 2:42 PM"

// in one line...
moment().format("D/M/YYYY");               // "4/11/2012"
moment().format("MMMM D, YYYY h:m A");     // outputs "April 11, 2012 2:42 PM"
另一个例子

var a = moment([2012, 2, 12, 15, 25, 50, 125]);
a.format("dddd, MMMM Do YYYY, h:mm:ss a"); // "Monday, March 12th 2012, 3:25:50 pm"
a.format("ddd, hA");                       // "Mon, 3PM"


另外,值得一提的是签出。我认为这两个库是相辅相成的。

如果您已经在使用jquery UI和日期选择器

var stringDate = $.datepicker.formatDate( 'dd/mm/yy', new Date() );
格式化库将解决这个问题和更多问题。它支持大多数momentjs格式加上U、G、I、L、T,分别返回UTC、GTM、ISO、Local和Time字符串。它还提供了一种可用于格式化其他内容的一致方法

使用此库的格式表达式采用嵌入式Javascript对象的形式,例如

format({Date:{format:'DD-MMM-YYYY hh:mm:ss:SSS A'}),新日期('2015-04-12 00:12:23');

会回来的


“2015年4月12日12:12:23:000上午”

看一看:+1好答案。我只是删除了不起作用的答案,因为它实际上没有添加任何内容。这不是一个好答案-使用document.write,不填充短数字,也会把月份弄错。@Alnitak,woops,没有看到月份。当然你不能批评
文档。不过写
,这只是一个例子。@Box9事实上,这是我抱怨中最不重要的部分。其余大部分答案都是错误的。对不起,我对这一切都不熟悉。我忘了删除错误的部分。当然,document.write只是演示而已。@Box9谢谢你清理我的邮件。还有人对让Steve的脚本在iPad上运行有任何问题吗?我已经将它嵌入了其中一款移动应用和爱情,直到我注意到它在iPad上爆炸
var a = moment([2012, 2, 12, 15, 25, 50, 125]);
a.format("dddd, MMMM Do YYYY, h:mm:ss a"); // "Monday, March 12th 2012, 3:25:50 pm"
a.format("ddd, hA");                       // "Mon, 3PM"
var stringDate = $.datepicker.formatDate( 'dd/mm/yy', new Date() );