Javascript时间戳函数一行

Javascript timstamp function one liner

本文关键字:一行 时间戳 函数 Javascript      更新时间:2023-09-26

在java中,这是我创建具有灵活格式的时间戳函数的一行代码:

String timestamp() {
  Calendar now = Calendar.getInstance();
  return String.format("%1$ty%1$tm%1$td_%1$tH%1$tM%1$tS", now);
}

在javascript中等效的是什么?下面是JSFiddle: jsfiddle.net/9kpea998

(Yes I know there is moment.js)

使用最少代码量的更简单的解决方案是:

function timestamp() {
    return new Date().toISOString();
}
document.write(timestamp());

但是你不能自定义格式

如果你想要问题中使用的确切格式,你可以使用这个较长的版本:

function timestamp() {
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth();
    var day = date.getDate();
    var hour = date.getHours();
    var minute = date.getMinutes();
    var second = date.getSeconds();
    year = year.toString().substr(2);
    month = ("00" + month).substr(-2,2);
    day = ("00" + day).substr(-2,2);
    var timestamp =
        year + month + day + "_" +
        hour + minute + second;
    return timestamp;
}
document.write(timestamp());

编辑:

您可以使用regex来格式化标准的ISO字符串,像这样:

function timestamp() {
    return new Date().toISOString().replace(/([-:]|'..+)/g, "").replace("T", "_");
}
document.write(timestamp());