谷歌计算器CE按钮功能及自定义计算器批量删除算子空格问题求助
谷歌计算器CE按钮功能
- CE是Clear Entry的缩写,核心功能是清除当前输入项,不会清空整个计算表达式:
- 若当前输入的是数字,按CE会删除最后输入的数字段;
- 若当前输入的是带前后空格的算子(比如" + "),按CE会直接删除该算子及前后空格,回到之前的数字输入状态。
实现一键删除算子及前后空格的代码方案
针对你的计算器显示格式(如"12 + 13"),可以通过正则匹配判断末尾内容,实现一键删除算子及前后空格,修改代码如下:
deletebtn.addEventListener('click', () => { let displayText = currentDisplay.textContent; // 匹配末尾的「空格+算子+空格」结构,覆盖加减乘除等常见算子 const operatorMatch = displayText.match(/\s[+\-×÷/]\s$/); if (operatorMatch) { // 匹配成功则删除最后3个字符(空格+算子+空格) currentDisplay.textContent = displayText.slice(0, -3); } else { // 未匹配到算子时,保持逐个删除字符的逻辑 currentDisplay.textContent = displayText.slice(0, -1); } });
逻辑说明
- 正则表达式
/\s[+\-×÷/]\s$/专门匹配表达式末尾的算子结构,确保只针对带前后空格的算子生效; - 匹配成功时一次性删除3个字符,解决需要三次点击的问题;
- 未匹配到算子的场景(比如末尾是数字或单个空格),保留原有的逐个删除逻辑,符合用户常规操作习惯。
内容的提问来源于stack exchange,提问作者tenkt
相关产品推荐
相关产品推荐

