簡體   English   中英

javascript中的時間戳格式

[英]timestamp format in javascript

我想使用JavaScript將日期格式為2014-07-24 17:35:0024-07-2014 17:35:00

我嘗試過這種方式

datestring = '2014-07-24 17:35:00';

function formatDate(datestring) {
    var m_names = new Array("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12");
    var d = new Date(datestring);
    //var d = new Date(datestring * 1000);
    var curr_date = d.getDate();
    var curr_month = d.getMonth();
    var curr_year = d.getFullYear();
    var hours = d.getHours();
    var minutes = d.getMinutes();
    var result = curr_date + "-" +m_names[curr_month]  + "-" + curr_year+' '+hours+':'+minutes;
    alert(result);
    return result;
}

但是我遇到了一個錯誤, NaN-undefined-NaN NaN:NaN 感謝幫助。

我認為您有解決此問題的簡單方法。

嘗試這個。

function myFunction() {

      var d = new Date("2014-07-24 17:35:00");
      var n = d.toLocaleDateString('en-GB');
      var t = d.toLocaleTimeString('en-GB')
      var r = n.replace(new RegExp('/', 'g'),'-')
      document.getElementById("demo").innerHTML = replase +" "+t; 
}

我嘗試了您的代碼,看看我發現了什么

var datestring = '2014-07-24 17:35:00';

$("#date").val(formatDate1())
$("#date2").val(formatDate())

function formatDate1(datestring) {
var m_names = new Array("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12");
  var d = new Date(datestring);
  //var d = new Date(datestring * 1000);
  var curr_date = d.getDate();
  var curr_month = d.getMonth();
  var curr_year = d.getFullYear();
  var hours = d.getHours();
  var minutes = d.getMinutes();
  var result = curr_date + "-" +m_names[curr_month]  + "-" + curr_year+' '+hours+':'+minutes;

  return result;
}

function formatDate() {
  var m_names = new Array("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12");
  var d = new Date(datestring);
  //var d = new Date(datestring * 1000);
  var curr_date = d.getDate();
  var curr_month = d.getMonth();
  var curr_year = d.getFullYear();
  var hours = d.getHours();
  var minutes = d.getMinutes();
  var result = curr_date + "-" +m_names[curr_month]  + "-" + curr_year+' '+hours+':'+minutes;

  return result;
}

所以您的問題是參數“ datestring”,因為它隱藏了具有相同名稱的變量

在這里你可以看到一個小提琴的例子

以下代碼更少的解決方案:

 function transformDate(dateString) { var dateTimeParts = dateString.split(' '); var dateParts = dateTimeParts[0].split('-'); return [[dateParts[2], dateParts[1], dateParts[0], ].join('-'), dateTimeParts[1]].join(" "); } var newDate = transformDate('2014-07-24 17:35:00'); console.log(newDate); 

如果您在代碼中需要更大的靈活性,包括使用本地化,則也可以考慮一下moment.js庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM