如何从日期时间格式中提取时间。
我的日期时间格式如下。
var datetime =2000-01-01 01:00:00 UTC;
我只想得到01.00
时间01
Date.prototype.toLocaleTimeString() 根据系统设置返回一个字符串,该字符串具有该日期时间部分的位置敏感表示。
var time = datetime.toLocaleTimeString();
更新:
新的语言环境和选项参数让应用程序指定应该使用其格式约定的语言并自定义函数的行为。在忽略语言环境和选项参数的旧实现中,使用的语言环境和返回的字符串形式完全取决于实现。
// Depending on timezone, your results will vary
var event = new Date('August 19, 1975 23:15:30 GMT+00:00');
console.log(event.toLocaleTimeString('en-US'));
// expected output: 1:15:30 AM
console.log(event.toLocaleTimeString('it-IT'));
// expected output: 01:15:30
这些方法怎么样
例如:
var d = new Date();
var n = d.getHours();
已编辑
根据世界时返回小时:
例子:
var d = new Date();
var n = d.getUTCHours();
作为替代方案,如果您想从字符串中获取时间 -
var datetime ="2000-01-01 01:00:00 UTC";
var myTime = datetime.substr(11, 2);
alert(myTime) //01
with the moment.js library it works in this way:
var result = moment().format('hh');
alert(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
var datetime = ("2000-01-01 01:00:00 UTC");
var d1 = new Date(datetime);
var minute = d1.getUTCMinutes();
var hour = d1.getUTCHours();
if(minute > 0)
alert(hour+"."+minute);
else
alert(hour);
var date1 = new Date(1945,10,20, 17,30)
var date2 = new Date(1970,1,8, 12,00)
console.log(date1.getHours() - 8 + (date1.getMinutes()/60))
console.log(date2.getHours() - 8 + (date2.getMinutes()/60))
使用以下代码:
var datetime = "2000-01-01 01:00:00 UTC";
var dt = new Date(datetime);
var hr = dt.getUTCHours();
if(hr > 12) {
hr -= 12;
}
alert(hr);
假设你有一个Date
像
var datetime = new Date("2000-01-01 01:00:00 UTC"); // might not parse correctly in every engine
// or
var datetime = new Date(Date.UTC(2000, 0, 1, 1, 0, 0));
然后使用getUTCHours
方法:
datetime.getUTCHours(); // 1
我已经做了!它看起来像这样:
console.log(new Date().toLocaleTimeString() + " " + new Date().getSeconds() + " seconds");