将json日期转换为javascript日期格式

时间:2017-04-17 12:15:13

标签: javascript jquery html5

我从json获取表数据,此日期显示为1238626800000
如何将其转换为date格式的10-02-2017格式 代码:https://jsfiddle.net/ncdpw7cf/
任何帮助?

3 个答案:

答案 0 :(得分:6)

您所拥有的数字“1238626800000”是UNIX timestamp(即自1970年1月1日以来的毫秒数)。

JavaScript Date对象识别出这一点,所以只需尝试:

new Date(parseInt(leaveList[i].leaveOn))

而不是

leaveList[i].leaveOn

这里的小提琴: https://jsfiddle.net/zLaoc00x/1/

为了格式化它使其显示为“12-02-2017”,您可以使用以下功能:

function unix_to_readable(timestamp) {
    var date = new Date(parseInt(timestamp)) ;
    return ('0' + date.getDate()).slice(-2) + '-'
         + ('0' + (date.getMonth()+1)).slice(-2) + '-'
         + date.getFullYear();
}

这里的第二个小提琴: https://jsfiddle.net/7534hwee/2/

答案 1 :(得分:2)

您可以将时间戳字符串转换为JavaScript日期对象,然后使用toISOString方法创建格式化日期,如下所示:



function formatDate(inputStr) {
    var timestamp = parseInt(inputStr, 10);
    var date = new Date(timestamp);
    return date.toISOString().substr(0, 10);
}

console.log(formatDate("1238626800000"));




请参阅更新的小提琴:https://jsfiddle.net/pahund/tytzuckz/1/

答案 2 :(得分:1)

这有助于我将json数据转换为日期格式..

function formatDate(inputStr) {
  var timestamp = parseInt(inputStr, 10);
  var date = new Date(timestamp);
  var a =date.toISOString().substr(0, 10);

  var datePart = a.match(/\d+/g),
  year = datePart[0].substring(2), 
  month = datePart[1], day = datePart[2];
  return day+'-'+month+'-'+year;

 }


https://jsfiddle.net/tytzuckz/2/