Javascript日期返回NaN未定义NaN

时间:2017-06-06 18:02:25

标签: javascript

我从SharePoint库中提取修改日期并使用以下内容进行转换:

    function convertSPDate(d) {
    // split apart the date and time
    var xDate = d.split("")[0];
    var xTime = d.split(" ")[1];

    // split apart the hour, minute, & second
    var xTimeParts = xTime.split(":");
    var xHour = xTimeParts[0];
    var xMin = xTimeParts[1];


    // split apart the year, month, & day
    var xDateParts = xDate.split("-");
    var xMonth = xDateParts[1]-1;    
    var xDay = xDateParts[2];
    var xYear = xDateParts[0];  

    var dDate = new Date(xYear, xMonth, xDay, xHour, xMin);
    return dDate;
}

然后使用以下格式对其进行格式化:

function getformattedDate(d){
var month = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sept", "October", "Nov" , "Dec"];
var getConvertedDate = d;
return formattedDate =  getConvertedDate.getDate() +" "+month[getConvertedDate.getMonth()] +" "+getConvertedDate.getFullYear();     
}

然后我尝试使用以下命令在页面上显示不同项目的日期:

var getDate = getformattedDate(convertSPDate(getFilteredItems[i].modified));

然而,这只是返回NaN undefined NaN - 任何帮助都会非常感激!

2 个答案:

答案 0 :(得分:0)

感谢@trincot - 这是一个非常简单的解决方案,而且我完全忽视了一个!

第一次拆分是错误的,只需要一个空间......

全部谢谢

答案 1 :(得分:0)

对于它的价值,如果你使用moment.js,这是一个单行:

var d = moment("2017-06-06 19:15").format("D MMM YYYY");

jsbin link