我检查了如下所示的字符串,我希望首先出现' - '字符,但是,我没有得到正确的结果,如下面的代码所示。另外,我想制作一个阵列,如上午11:30 - 下午4:00,第一部分和下午5:00 - 凌晨12:00,第二部分?
console.log("checkHours", checkHours);
let [start, end] = checkHours.split(' – ');
current log:
checkHours 11:30 AM – 4:00 PM, 5:00 PM – 12:00 AM
start, end 11:30 AM 4:00 PM, 5:00 PM
也就是说,我希望结果像 - >数组中的第一个元素应该是上午11:30 - 下午4:00,第二个元素是数组中的下午5:00 - 上午12:00。然后我可以在11:30 AM - 4:00 PM的第一个元素上拆分' - ',结果是start = 11:30 AM,end = 4:00 PM。
答案 0 :(得分:1)
选项#1
加入其他分裂元素:
checkHours = "11:30 AM – 4:00 PM, 5:00 PM – 12:00 AM";
console.log("checkHours", checkHours);
let [start, ...end] = checkHours.split(' – ');
end = end.join(" - ");
console.log(start);
console.log(end);
选项#2: 不要使用拆分
checkHours = "11:30 AM – 4:00 PM, 5:00 PM – 12:00 AM";
console.log("checkHours", checkHours);
let start, end;
if (checkHours.indexOf(" – ") > -1) {
[start, end] = [checkHours.slice(0, checkHours.indexOf(" – ")), checkHours.slice(checkHours.indexOf(" – ") + 3)];
}
console.log(start);
console.log(end);