繁体   English   中英

如何更改javascript中现有日期的日期格式

[英]How to change the date format in javascript for existing date

我已经下载了用于实时聊天的war文件(不是我的代码)websockets应用程序(Java应用程序)

这就是我从后端接收的信息(我没有代码)

Object {message: "as", sender: "sdas", received: "Thu Nov 19 21:12:36 IST 2015"}

是否可以更改日期,以便我只能

Thu Nov 19 21:12:36 ,而不是星期四十一月19 21:12:36 IST 2015

function onMessageReceived(evt) {

    var msg = JSON.parse(evt.data); 
    console.log(msg);
    var $messageLine = $('<tr><td class="received">' + msg.received
            + '</td><td class="user label label-info">' + msg.sender
            + '</td><td class="message badge">' + msg.message
            + '</td></tr>');
    $chatWindow.append($messageLine);
}

你能让我知道怎么做吗

使用正则表达式在时间之前获取所有内容:

function onMessageReceived(evt) {
    var msg = JSON.parse(evt.data); 
    var date=msg.received.match(/(.*\d{1,2}:\d{2}:\d{2})/);
    var $messageLine = $('<tr><td class="received">' + date[1]
    ...

您可以通过任何方式获取有效的长日期,以删除字符串的两个单词的尾部,

function simpleDateString(dt){       

    return dt.split(" ").splice(0, 4).join(" ");
}

使用上述功能删除尾部单词,让我们修改您的功能

function onMessageReceived(evt) {

    var msg = JSON.parse(evt.data); 
    console.log(msg);
    var simpleDate = simpleDateString(msg.received); //parse your date string
    var $messageLine = $('<tr><td class="received">' + simpleDate 
            + '</td><td class="user label label-info">' + msg.sender
            + '</td><td class="message badge">' + msg.message
            + '</td></tr>');
    $chatWindow.append($messageLine);
}

您可以使用Date

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date/parse

自动解析并创建几乎所需的任何格式。

此外,由于看起来格式是静态的,因此您可以使用简单的字符串操作函数仅提取主日期(通用性较差,通常不建议使用,但更高效且与旧版兼容)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM