在Javascript中,我怎么能以这种格式获得今天的日期yyyymmdd

时间:2012-09-24 12:48:59

标签: javascript date

就像我需要以20120924(yyyymmdd)这样的格式获取今天的日期。如何在javascript中获取此内容。

5 个答案:

答案 0 :(得分:3)

您可以向日期原型添加方法,因此您可以在任何日期对象上使用它:

Date.prototype.toMyString = function () {

    function padZero(obj) {
          obj = obj + '';
          if (obj.length == 1)
              obj = "0" + obj
          return obj;
    }

    var output = "";
    output += this.getFullYear();
    output += padZero(this.getMonth()+1);
    output += padZero(this.getDate());

    return output; 
}

var d = new Date();
alert(d.toMyString());  // Today

var otherDate = new Date(2012,0,1);
alert(otherDate.toMyString());​  //Jan 1 2012

小提琴:http://jsfiddle.net/johnkoer/4rk7K/10/

答案 1 :(得分:3)

这对我有用。

var rDate = (new Date()).toISOString().slice(0, 10).replace(/-/g, "");

答案 2 :(得分:2)

试试这个。

​var date = new Date();
var year = date.getFullYear().toString();
var month = date.getMonth().toString();
var day = date.getDate().toString();

if (parseInt(month) < 10) month = "0" + month;
if (parseInt(day) < 10) day = "0" + day;

var parsedDate = year + month + day;

(编辑) 通过使日等于月中的某天而不是星期几来改进此功能。

答案 3 :(得分:0)

怎么样

date = new Date().toJSON().substr(0,10).split("-")
date = date[0] + date[1] + date[2]

编辑:
这将返回UTC日期,而不是本地日期......

对于本地日期,您可以使用:

date = new Date().toLocaleDateString().split("/");  // "M/D/YYYY"
date[0] = date[0].length == 1 ? "0" + date[0] : date[0];
date[1] = date[1].length == 1 ? "0" + date[1] : date[1];
date = date[2] + date[0] + date[1];

答案 4 :(得分:-2)

var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
var curr_year = d.getFullYear();
document.write(curr_year + curr_month + curr_date);

那应该给出正确的日期:)