当前位置: 首页 > 面试题库 >

在JavaScript中获取当前日期和时间

松波
2023-03-14
问题内容

我有一个可在JavaScript中显示当前日期和时间的脚本,但这DATE始终是错误的。这是代码:

var currentdate = new Date();
var datetime = "Last Sync: " + currentdate.getDay() + "/" + currentdate.getMonth() 
+ "/" + currentdate.getFullYear() + " @ " 
+ currentdate.getHours() + ":" 
+ currentdate.getMinutes() + ":" + currentdate.getSeconds();

它应该打印18/04/2012 15:07:33并打印3/3/2012 15:07:33

有什么帮助吗?谢谢


问题答案:

.getMonth()返回一个从零开始的数字,以便获得正确的月份,您需要将其加1,因此调用.getMonth()in可能会返回4而不是5

因此,在您的代码中,我们可以currentdate.getMonth()+1用来输出正确的值。此外:

  • .getDate()返回月中的某天 < -这是您想要的*那一天 *
  • .getDay()Date对象的单独方法,它将返回代表星期几(0-6)0 == Sunday等的整数。

因此您的代码应如下所示:

var currentdate = new Date(); 
var datetime = "Last Sync: " + currentdate.getDate() + "/"
                + (currentdate.getMonth()+1)  + "/" 
                + currentdate.getFullYear() + " @ "  
                + currentdate.getHours() + ":"  
                + currentdate.getMinutes() + ":" 
                + currentdate.getSeconds();

JavaScript Date实例继承自Date.prototype。您可以修改构造函数的原型对象,以影响JavaScript
Date实例继承的属性和方法。

您可以利用Date原型对象创建一个新方法,该方法将返回今天的日期和时间。这些新方法或属性将被Date对象的所有实例继承,因此如果您需要重用此功能,则使其特别有用。

// For todays date;
Date.prototype.today = function () { 
    return ((this.getDate() < 10)?"0":"") + this.getDate() +"/"+(((this.getMonth()+1) < 10)?"0":"") + (this.getMonth()+1) +"/"+ this.getFullYear();
}

// For the time now
Date.prototype.timeNow = function () {
     return ((this.getHours() < 10)?"0":"") + this.getHours() +":"+ ((this.getMinutes() < 10)?"0":"") + this.getMinutes() +":"+ ((this.getSeconds() < 10)?"0":"") + this.getSeconds();
}

然后,您只需执行以下操作即可检索日期和时间:

var newDate = new Date();
var datetime = "LastSync: " + newDate.today() + " @ " + newDate.timeNow();

或内联调用该方法,因此只需-

var datetime = "LastSync: " + new Date().today() + " @ " + new Date().timeNow();


 类似资料:
  • 我有一个用JavaScript打印当前日期和时间的脚本,但是总是错误的。代码如下: 它应该打印并打印

  • 问题内容: 如何在JavaScript中获取当前日期? 问题答案: 使用生成一个新的包含当前日期和时间对象。 这将以mm / dd / yyyy的格式给您今天的日期。 只需更改为所需的任何格式。

  • 问题内容: 如何获得Redis中嵌入的Lua中的当前日期/时间? 我需要采用以下格式-YYYY-MM-DD,HH:MM:SS 尝试使用os.date(),但无法识别。 问题答案: Redis的Lua沙箱只有少数几个库,并不是其中之一。 您可以像这样从Lua 呼叫Redis : 但是,您将需要找到一种将纪元转换为所需格式的方法,并且还要注意,它将阻止脚本执行任何写操作(因为这是不确定的命令)。 更新

  • 问题内容: 是否可以在手动查询中使用诸如DATETIME之类的值或命令来插入当前日期和时间? 末尾引用的DATETIME值是我要添加当前日期和时间的位置。 问题答案: 您可以使用:

  • 问题内容: 如何使用Java获取当前日期和时间? 我正在寻找与C#等效的东西。 问题答案: 只需构造一个没有任何参数的新对象即可;这会将当前日期和时间分配给新对象。 在的话的Javadoc的无参数的构造函数: 分配一个Date对象并对其进行 初始化,以便它表示分配它的时间( 以最近的毫秒为单位)。 确保您使用的不是-后者没有零参数构造函数,并且语义有所不同,这是完全不同的对话的主题。:)

  • 问题内容: 过去几个小时以来,我一直在网上搜索以获取系统时区中的日期时间。 当我使用calendar.getTimezone.getDefaultName时,它总是返回我格林尼治标准时间。(理想情况下,它应该返回我当前的时区,即IST)。我正在尝试将此字符串(“格林尼治标准时间”)“ 2014-02-14T06:04:00:00”转换为我的时区datetime。它总是在格林尼治标准时间同时返回我。