Date to String对象转换

时间:2014-01-03 07:40:53

标签: javascript jquery html

我使用以下代码片段将Date对象转换为字符串。

 var startDate = new Date();
 var result = Globalize.parseDate(startDate, "MM/DD/YYYY");

但它将返回null值。如何将Date对象转换为字符串特定格式?

6 个答案:

答案 0 :(得分:4)

要了解所有可能的方法,请检查 this link

我已将所有<​​strong> DEMOS here...

STANDARD JS:

<script type="text/javascript">
    var d = new Date();
    var curr_date = d.getDate();
    var curr_month = d.getMonth() + 1; //Months start with zero
    var curr_year = d.getFullYear();
    document.write(curr_month + "/" + curr_date + "/" + curr_year);
</script>

MOMENT.JS:

<强> Download here...

<script>    
    var a = moment([2010, 1, 14, 15, 25, 50, 125]);
    a.format("MM/DD/YYYY,");    
</script>

不想下载,只需添加以下行:

<script src="http://momentjs.com/downloads/moment.min.js"></script>

jQuery UI:

$.datepicker.formatDate('yy-mm-dd', new Date(2007, 1 - 1, 26));

IE:

var d1=new Date();
d1.toString('MM-dd-yyyy');

全球化:

var startDate = new Date();
var result = Globalize.format(startDate, "MM/DD/YYYY");

答案 1 :(得分:3)

我假设您使用 Globalize

您应该做的是格式化日期,而不是解析日期。

var startDate = new Date();
var result = Globalize.format(startDate, "MM/DD/YYYY");

答案 2 :(得分:2)

您只需使用

即可
var startDate = new Date();
alert((startDate .getMonth() + 1) + '/' + startDate .getDate() + '/' +  startDate .getFullYear());

DEMO

答案 3 :(得分:1)

试试这个:

var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth() + 1; //Months are zero based
var curr_year = d.getFullYear();
document.write(curr_date + "-" + curr_month + "-" + curr_year);

参考: Where can I find documentation on formatting a date in JavaScript?

答案 4 :(得分:1)

MomentJS有一套非常强大的时间格式选项,您可以使用它们。

以下是如何在您的案例中使用

的示例
moment(stateDate).format("MM/DD/YYYY");

答案 5 :(得分:0)

此函数将日期对象作为参数,并以MM/DD/YYYY格式返回字符串:

function format(date) {
    return [
        ('0' + (date.getMonth() + 1)).slice(-2),
        ('0' + date.getDate()).slice(-2),
        date.getFullYear()
    ].join('/')
}

用法示例(以MM/DD/YYYY格式提供今天的日期):

format(new Date) // "01/03/2014"

您可以通过一些修改轻松更改结果格式:

function format(date) {
    return [
        date.getDate(),
        date.getMonth() + 1,
        ('' + date.getFullYear()).slice(-2)
    ].join('-')
}

用法示例(以D-M-YY格式提供今天的日期):

format(new Date) // "3-1-14"

玩耍

我已经调整了一下这个函数,这对于非常基本的需求可能很有趣:)

function format(date, format) {
    var i = 0, bit;
    if (!format) format = 'MM/DD/YYYY'; // default
    format = format.split(/([^DMY]+)/i);
    while (bit = format[i]) {
        switch (bit.charAt(0).toUpperCase()) {
            case 'D': format[i] = date.getDate(); break;
            case 'M': format[i] = date.getMonth() + 1; break;
            case 'Y': format[i] = date.getFullYear(); break;
        }
        if (bit.length === 2) {
            format[i] = ('0' + format[i]).slice(-2);
        }
        i += 2;
    }
    return format.join('');
}

用法示例:

format(new Date)             // "01/03/2014" (default)
format(new Date, 'd/m/y')    // "3/1/2014"
format(new Date, 'D/M/Y')    // "3/1/2014"
format(new Date, 'DD-MM-YY') // "03-01-14"
format(new Date, 'M/YY')     // "1/14"