【发布时间】:2022-03-31 00:58:23
【问题描述】:
如何从日期时间格式中提取时间。
我的日期时间格式如下。
var datetime =2000-01-01 01:00:00 UTC;
我只想将01.00 的时间设为01
【问题讨论】:
-
你想从字符串还是日期对象中获取这个?
标签: javascript
如何从日期时间格式中提取时间。
我的日期时间格式如下。
var datetime =2000-01-01 01:00:00 UTC;
我只想将01.00 的时间设为01
【问题讨论】:
标签: javascript
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
【讨论】:
使用moment.js 库,它以这种方式工作:
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);
【讨论】:
2(在 GMT+0100 中)- OP 想要得到 1
假设你有一个Date object 喜欢
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 method:
datetime.getUTCHours(); // 1
【讨论】:
我做到了!它看起来像这样:
console.log(new Date().toLocaleTimeString() + " " + new Date().getSeconds() + " seconds");
【讨论】:
希望你能在这里找到解决办法。
let preDateTime = new Date("2022-03-31 22:26:00");
let newTime = preDateTime.toLocaleTimeString('en-US');
let hour = newTime.split(":")[0];
let amPm = newTime.split(" ")[1];
let seconds = newTime.split(":")[2].replace(amPm,'');;
let noAmPm = newTime.replace(amPm,'');
let noAmPmSeconds = noAmPm.replace(":"+seconds,'');
let noSeconds = newTime.replace(":"+seconds,' ');
if(parseInt(hour)<9){
newTime = "0"+newTime;
noAmPm = "0"+noAmPm
noSeconds= "0"+noSeconds
noAmPmSeconds = "0"+noAmPmSeconds;
}
console.log(newTime); //10:26:00 PM
console.log(noAmPm); //10:26:00
console.log(noSeconds); //10:26 PM
console.log(noAmPmSeconds); //10:26
【讨论】: