如何使用jQuery获取当前时间

问题描述 投票:121回答:13

以下返回以微秒为单位的时间,例如4565212462。

alert( $.now() );

如何将其转换为人类可读的时间格式,例如(小时:分钟:秒)?

jquery datetime time unix-timestamp microtime
13个回答
273
投票

你可以尝试这样:

new Date($.now());

也可以使用Javascript,你可以这样做:

var dt = new Date();
var time = dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds();
document.write(time);

1
投票

尝试

console.log(
  new Date().toLocaleString().slice(9, -3)
  , new Date().toString().slice(16, -15)
);

1
投票

使用JavaScript本机Date函数,您可以根据需要获得hoursminutesseconds。如果您希望以特定方式格式化日期和时间,则可能需要实现扩展JavaScript Date原型的方法。

这是一个已经实施的:https://github.com/jacwright/date.format


0
投票

当地时间在ISO8601的SQL TIMESTAMP你可以尝试:

var tzoffset = (new Date()).getTimezoneOffset() * 60000;
var localISOTime = (new Date(Date.now() - tzoffset))
  .toISOString()
  .slice(0, 19)
  .replace('T', ' ');
$('#mydatediv').val(localISOTime);

0
投票

console.log(
  new Date().toLocaleString().slice(9, -3)
  , new Date().toString().slice(16, -15)
);

44
投票

您需要手动获取所有“数字”

像这样:

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

document.write(datetime);

37
投票

使用Date之一将Date.prototype's conversion getters对象转换为字符串,例如:

var d = new Date();
d+'';                  // "Sun Dec 08 2013 18:55:38 GMT+0100"
d.toDateString();      // "Sun Dec 08 2013"
d.toISOString();       // "2013-12-08T17:55:38.130Z"
d.toLocaleDateString() // "8/12/2013" on my system
d.toLocaleString()     // "8/12/2013 18.55.38" on my system
d.toUTCString()        // "Sun, 08 Dec 2013 17:55:38 GMT"

或者,如果您想要更多自定义,请参阅the list of Date.prototype's getter methods


22
投票

你不需要为此使用jQuery!

native JavaScript implementation is Date.now()

Date.now()$.now()返回相同的值:

Date.now(); // 1421715573651
$.now();    // 1421715573651
new Date(Date.now())   // Mon Jan 19 2015 20:02:55 GMT-0500 (Eastern Standard Time)
new Date($.now());     // Mon Jan 19 2015 20:02:55 GMT-0500 (Eastern Standard Time)

..如果你想要时间格式为hh-mm-ss:

var now = new Date(Date.now());
var formatted = now.getHours() + ":" + now.getMinutes() + ":" + now.getSeconds();
// 20:10:58

16
投票

.clock {
width: 260px;
margin: 0 auto;
padding: 30px;
color: #FFF;background:#333;
}
.clock ul {
width: 250px;
margin: 0 auto;
padding: 0;
list-style: none;
text-align: center
}

.clock ul li {
display: inline;
font-size: 3em;
text-align: center;
font-family: "Arial", Helvetica, sans-serif;
text-shadow: 0 2px 5px #55c6ff, 0 3px 6px #55c6ff, 0 4px 7px #55c6ff
}
#Date { 
font-family: 'Arial', Helvetica, sans-serif;
font-size: 26px;
text-align: center;
text-shadow: 0 2px 5px #55c6ff, 0 3px 6px #55c6ff;
padding-bottom: 40px;
}

#point {
position: relative;
-moz-animation: mymove 1s ease infinite;
-webkit-animation: mymove 1s ease infinite;
padding-left: 10px;
padding-right: 10px
}

/* Animasi Detik Kedap - Kedip */
@-webkit-keyframes mymove 
{
0% {opacity:1.0; text-shadow:0 0 20px #00c6ff;}
50% {opacity:0; text-shadow:none; }
100% {opacity:1.0; text-shadow:0 0 20px #00c6ff; } 
}

@-moz-keyframes mymove 
{
0% {opacity:1.0; text-shadow:0 0 20px #00c6ff;}
50% {opacity:0; text-shadow:none; }
100% {opacity:1.0; text-shadow:0 0 20px #00c6ff; } 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// Making 2 variable month and day
var monthNames = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ]; 
var dayNames= ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]

// make single object
var newDate = new Date();
// make current time
newDate.setDate(newDate.getDate());
// setting date and time
$('#Date').html(dayNames[newDate.getDay()] + " " + newDate.getDate() + ' ' + monthNames[newDate.getMonth()] + ' ' + newDate.getFullYear());

setInterval( function() {
// Create a newDate() object and extract the seconds of the current time on the visitor's
var seconds = new Date().getSeconds();
// Add a leading zero to seconds value
$("#sec").html(( seconds < 10 ? "0" : "" ) + seconds);
},1000);

setInterval( function() {
// Create a newDate() object and extract the minutes of the current time on the visitor's
var minutes = new Date().getMinutes();
// Add a leading zero to the minutes value
$("#min").html(( minutes < 10 ? "0" : "" ) + minutes);
},1000);

setInterval( function() {
// Create a newDate() object and extract the hours of the current time on the visitor's
var hours = new Date().getHours();
// Add a leading zero to the hours value
$("#hours").html(( hours < 10 ? "0" : "" ) + hours);
}, 1000); 
});
</script>
<div class="clock">
<div id="Date"></div>
<ul>
<li id="hours"></li>
<li id="point">:</li>
<li id="min"></li>
<li id="point">:</li>
<li id="sec"></li>
</ul>
</div>

8
投票

jQuery.now()返回:数字

描述:返回表示当前时间的数字。

此方法不接受任何参数。

$.now()方法是表达式(new Date).getTime()返回的数字的简写。

http://api.jquery.com/jQuery.now/

使用Javascript很简单:

var d = new Date();
var time = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
console.log(time);

5
投票

jQuery的$ .now()是新的Date()。getTime()的别名,是一个内部Javascript函数。

http://api.jquery.com/jquery.now/

这将返回自1970年以来经过的秒数,通常称为(不一定正确)为Unix时间,纪元或时间戳,具体取决于您所在的圆圈。使用简单的数学计算日期/时间之间的差异非常方便。它没有任何TimeZone信息,并且始终是UTC。

http://en.wikipedia.org/wiki/Unix_time

除了这个别名之外,没有必要使用jQuery,它对日期/时间操作没什么帮助。

如果您正在寻找一种快速而肮脏的方式来表示文本中的时间,则Javascript Date对象具有“toString”原型,该原型将返回ISO格式的日期时间。

new Date().toString();
//returns "Thu Apr 30 2015 14:37:36 GMT+0100 (BST)"

不仅如此,您还需要自定义格式。 Date对象能够提取相关详细信息,以便您可以构建自己的字符串表示形式。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

var d = new Date(); //without params it defaults to "now"
var t = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
//Will return 14:37:36

但是,正如您要求使用jQuery解决方案 - 您可能正在使用旧版浏览器。如果您想要做更具体的事情 - 特别是将字符串解释为Date对象(对API响应很有用),您可能需要查看Moment.js。

http://momentjs.com/

这将确保跨浏览器兼容性并且具有大大改进的格式,而无需将大量字符串连接在一起!例如:

moment().format('hh:mm:ss');
//Will return 14:37:36

4
投票

我使用moment来满足我所有的时间操作/显示需求(客户端和node.js,如果你使用它),如果你只需要一个简单的格式,上面的答案将会做,如果你正在寻找一些更复杂的东西,时刻是去IMO的方式。


3
投票
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
</script>
<script>
    function ShowLocalDate()
    {
    var dNow = new Date();
    var localdate= (dNow.getMonth()+1) + '/' + dNow.getDate() + '/' + dNow.getFullYear() + ' ' + dNow.getHours() + ':' + dNow.getMinutes();
    $('#currentDate').text(localdate)
    }
</script>

</head>
<body>
    enter code here
    <h1>Get current local enter code here Date in JQuery</h1>
    <label id="currentDate">This is current local Date Time in JQuery</p>
    <button type="`enter code here button onclick="ShowLocalDate()">Show Local DateTime</button>

</body>
</html> 

您可以从以下链接获取更多信息

http://www.morgantechspace.com/2013/11/Get-current-Date-time-in-JQuery.html#GetLocalDateTimeinJQuery

© www.soinside.com 2019 - 2024. All rights reserved.