我有一个由格式'hhmmss'
字符串表示的时间值,并希望为每小时,分钟和秒分配一个变量。
我试图找到一个解决方案,我可以做一些整洁的事情,比如
let [h, m, s] = '083000';
目前,我的工作解决方案有点冗长:
const str = '083000';
let [h, m, s] = [str.slice(0, 2), str.slice(2, 4), str.slice(4, 6)];
有没有办法更接近第一个片段?
答案 0 :(得分:7)
您可以使用正则表达式将字符串“分块”为两个字符串的数组:
const str = '083000';
let [h, m, s] = str.match(/../g);
答案 1 :(得分:1)
根据输入格式的保证程度以及您希望自己记录代码的方式,我个人认为这是最具可读性的方法:
const str = '083000'
const [, h, m, s] = str.match(/^([0-9]{2})([0-9]{2})([0-9]{2})$/);
这清楚表明你正在抓取三组2位数字。