2017-06-05 102 views
-1

我有日期以下方式 -提取上午或下午jQuery中

06:04:51 am 

我想从这个日期时间提取am/pm。 根据上午或下午将选择特定类别的时间持有者。

有没有什么办法提取这个值?

+2

是一个字符串?或者你有一个日期对象? –

+0

在这个单一问题的背景下可能会过度杀伤,但如果您使用日期/时间,我会建议看看['moment.js'](https://momentjs.com/) - 一个梦幻般的图书馆用于处理日期。 – Lix

+0

如果您正在使用或访问日期对象以随时查看时间('myDate.getHours()> = 12?“PM”:“AM”') – Marie

回答

0

您也可以利用此空间

var str="06:04:51 am"; 
alert(str.substr(str.indexOf(" ") + 1)); 
1

后提取ampm如果这是最后一次削减2个字符的字符串。

var date = '06:04:51 am'; 
 
var ampm = date.slice(-2); 
 
console.log(ampm);

,如果这是一个约会对象

var date = new Date(); 
 

 
console.log(getAMPM(date)); 
 

 
function getAMPM(dateObj) { 
 
    return dateObj.getHours < 12 ? 'am' : 'pm'; 
 
}

0

您还可以使用正则表达式来获取上午或下午 从字符串

"06:04:51 am".match(/(am|pm)/gi) 
["am"] 

"06:04:51 pm".match(/(am|pm)/gi) 
["pm"] 

使用不区分大小写的标志,可以确保它匹配AM,PM也

相关问题