JavaScript随手笔记 --- 对数据进行判断最大位数是否超过八位

简介: JavaScript随手笔记 --- 对数据进行判断最大位数是否超过八位



一、方法一:正则表达式

  要判断一个字符串输入的数据是否超过八位,需要用正则表达式来进行匹配,这里可以在线学习正则网站,可以练练,里面还有一些语法什么的。

  毕竟比较赶时间,写的仓促,所以很多地方还是可以优化的。有什么不对的话还请大家多多体谅,谢谢啦 😀 😀 😀 。

1.匹配公式和单个数据

  regexBit 用于匹配包含数字和运算符的字符串,例如 12345678 或者 12345678+12345678,不匹配数据超出八位数的情况。

var regexBit = /^[-]?(\d{8}|[\d\.]{9}|\d{8}[+\-*/]\d{8}|[\d\.]{9}[+\-*/][\d\.]{9})$/;

  这里简单讲解一下该正则表达式各个部分的作用:

  • /^[-]?)$/
字符 描述
^ 表示从匹配输入字符串的开始位置,除非在方括号表达式中使用,
当该符号在方括号表达式中使用时,表示不接受该方括号表达式中的字符集合,
$ 匹配输入字符串的结尾位置;
[-]? 表示匹配可选的负号(-)
  • \d{8}
字符 描述
\d{8} 匹配任意的八个数字
  • [\d\.]{9}
字符 描述
[\d\.]{9} 匹配带有小数点的八个数字,加上小数点字符,所以长度为9,
用于匹配0.12345671234567.8 等情况;
  • \d{8}[+\-*/]\d{8}
字符 描述
\d{8}[+\-*/]\d{8} 匹配八个数字+四个运算符中的一个+八个数字,例如:12345678+12345678
  • [\d\.]{9}[+\-*/][\d\.]{9}
字符 描述
[\d\.]{9}[+\-*/][\d\.]{9} 匹配带有小数点的八位数字+基础运算符之一+带有小数点的八位数字,例如:0.1234567+0.1234567

2.对数据进行判断是否能展示

  使用上面正则表达式可以排除输入单个数据或者公式输入数据超过8位的情况,而只匹配包含八位数字、小数点和运算符的运算表达式,从而判断输入字符串是否为有效的运算表达式。

/**
 * @author CSH
 * @function 函数功能:对数据进行判断最大位数是否超过八位
 * @param {string} displayNumber [需要判断的数据]
 */
function isCalcDataBit (displayNumber) {
  return regexBit.test(displayNumber) && !isNaN(eval(displayNumber));
}

运行测试:

// 示例用法
console.log(isCalcDataBit ("12345678")); // true
console.log(isCalcDataBit ("0.1234567")); // true
console.log(isCalcDataBit ("1234")); // false
console.log(isCalcDataBit ("42")); // false
console.log(isCalcDataBit ("-3")); // false
console.log(isCalcDataBit ("12345678+12345678")); // true
console.log(isCalcDataBit ("1.2345678+123456.78")); // true
console.log(isCalcDataBit ("1.3333")); // false

总结

  感谢观看,如果有帮助到你,请给文章点个赞和收藏,让更多的人看到。🌹 🌹 🌹

  也欢迎你,关注我。👍 👍 👍

  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!


相关文章
|
2月前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
49 0
|
29天前
|
监控 JavaScript 算法
深度剖析 Vue.js 响应式原理:从数据劫持到视图更新的全流程详解
本文深入解析Vue.js的响应式机制,从数据劫持到视图更新的全过程,详细讲解了其实现原理和运作流程。
|
1月前
|
自然语言处理 JavaScript 前端开发
[JS]同事看了我做的this笔记,直摇头,坦言:我还是参考启发博文吧
本文介绍了JavaScript中`this`关键字的重要性和使用规则。作者回顾了早期笔记,总结了`this`指向的各种情况,并分享了最新的理解。文章强调了`this`在不同上下文中的指向,包括对象方法、全局函数、箭头函数等,并提供了改变`this`指向的方法。适合JavaScript开发者参考。
48 2
|
1月前
|
数据采集 存储 JavaScript
如何使用Puppeteer和Node.js爬取大学招生数据:入门指南
本文介绍了如何使用Puppeteer和Node.js爬取大学招生数据,并通过代理IP提升爬取的稳定性和效率。Puppeteer作为一个强大的Node.js库,能够模拟真实浏览器访问,支持JavaScript渲染,适合复杂的爬取任务。文章详细讲解了安装Puppeteer、配置代理IP、实现爬虫代码的步骤,并提供了代码示例。此外,还给出了注意事项和优化建议,帮助读者高效地抓取和分析招生数据。
如何使用Puppeteer和Node.js爬取大学招生数据:入门指南
|
2月前
|
前端开发 JavaScript
JS-数据筛选
JS-数据筛选
35 7
|
3月前
|
JavaScript 前端开发 Java
JavaScript笔记(回顾一,基础知识篇)
JavaScript基础知识点回顾,包括语言定义、ECMAScript规范、字面量、变量声明、操作符、关键字、注释、流程控制语句、数据类型、类型转换和引用数据类型等。
JavaScript笔记(回顾一,基础知识篇)
|
2月前
|
JavaScript 数据安全/隐私保护
2024了,你会使用原生js批量获取表单数据吗
2024了,你会使用原生js批量获取表单数据吗
57 4
|
3月前
|
JavaScript 前端开发 安全
js逆向实战之烯牛数据请求参数加密和返回数据解密
【9月更文挑战第20天】在JavaScript逆向工程中,处理烯牛数据的请求参数加密和返回数据解密颇具挑战。本文详细分析了这一过程,包括网络请求监测、代码分析、加密算法推测及解密逻辑研究,并提供了实战步骤,如确定加密入口点、逆向分析算法及模拟加密解密过程。此外,还强调了法律合规性和安全性的重要性,帮助读者合法且安全地进行逆向工程。
109 11
|
2月前
|
机器学习/深度学习 JSON JavaScript
LangChain-21 Text Splitters 内容切分器 支持多种格式 HTML JSON md Code(JS/Py/TS/etc) 进行切分并输出 方便将数据进行结构化后检索
LangChain-21 Text Splitters 内容切分器 支持多种格式 HTML JSON md Code(JS/Py/TS/etc) 进行切分并输出 方便将数据进行结构化后检索
38 0
|
2月前
|
数据采集 JavaScript 前端开发
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)