Javascript 从字符串中提取时间

Javascript 从字符串中提取时间,javascript,jquery,Javascript,Jquery,我有一个字符串,格式如下:“7:18 am” 我希望能够将“718”(不是中间的冒号)和“am”提取到两个独立的变量中 我尝试过这样做,但它只返回了第一个整数——在本例中是7 var time = parseInt("7:18") 实现这一点的最佳方法是什么?一种方法是将其拆分,然后将所需的值合并在一起: var str = "7:18 am".split(" "), time = parseInt(str[0].replace(":", ""), 10), ampm = st

我有一个字符串,格式如下:“7:18 am”

我希望能够将“718”(不是中间的冒号)和“am”提取到两个独立的变量中

我尝试过这样做,但它只返回了第一个整数——在本例中是7

var time = parseInt("7:18")

实现这一点的最佳方法是什么?

一种方法是将其拆分,然后将所需的值合并在一起:

var str = "7:18 am".split(" "),
    time = parseInt(str[0].replace(":", ""), 10),
    ampm = str[1];

console.log(time, ampm);  // 718 "am"
var timeAm = "7:18 am".split(' '); // ["7:18", "am"]
var hourMin = timeAm[0].split(':'); // ["7", "18"]
var time = parseInt(hourMin.join(''), 10); // 718

这看起来会有用的。在您的输出中,您将“am”放在引号中-这只是为了表明其数据类型是字符串吗?@joshft91是的,绝对是这样。
var str = "7:18 am";
var ampm = str.split(" ")[1];
var time = str.split(" ")[0].split(":").join("");
console.log(ampm+" "+time);