JavaScript常用函数详解:空值检查、中文判断、数字验证与货币格式
需积分: 9 145 浏览量
更新于2024-09-17
收藏 8KB TXT 举报
本文将介绍JavaScript中常见的函数和方法,包括检查空值、验证中文字符、判断数字、确认特定长度数字以及验证货币格式的函数。
在JavaScript编程中,经常会遇到需要验证用户输入的情况,以下是一些实用的函数示例:
1. isEmpty() 函数用于检查一个变量是否为空字符串。如果变量的值是空字符串,它会弹出一个警告框显示指定的消息,并返回`true`。否则,返回`false`。这在表单验证中非常有用,确保用户必须填写某些字段。
```javascript
function isEmpty(theValue, strMsg) {
if (theValue == "") {
alert(strMsg + "不能为空!");
return true;
}
return false;
}
```
2. isChinese() 函数用来检测一个字符串是否只包含中文字符。如果字符串中含有非中文字符,或者字符串为空,函数返回`false`。否则,返回`true`。这个函数可以用于验证用户输入的姓名或地址是否符合中文字符的要求。
```javascript
function isChinese(str) {
var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" + "" + ""//全角符号
badChar += "`~!@#$%^&()-_=+\\|:;\"'<,>/?"; //特殊字符
if ("" == str) {
return false;
}
for (var i = 0; i < str.length; i++) {
var c = str.charAt(i); //获取str中的每个字符
if (badChar.indexOf(c) > -1) {
return false;
}
}
return true;
}
```
3. isNumber() 函数用于验证一个字符串是否全由数字组成。如果字符串为空或者包含非数字字符,函数返回`false`;否则,返回`true`。这个函数可以帮助确保用户输入的是数值而不是其他字符。
```javascript
function isNumber(str) {
if ("" == str) {
return false;
}
var reg = /\D/;
return str.match(reg) == null;
}
```
4. isNumber_Ex() 函数进一步扩展了`isNumber()`,除了检查字符串是否全由数字组成外,还检查字符串的长度是否等于指定的长度`len`。如果字符串为空、长度不符或不全由数字组成,函数返回`false`;否则,返回`true`。这个函数适用于需要特定长度数字的场景,如电话号码或身份证号。
```javascript
function isNumber_Ex(str, len) {
if ("" == str) {
return false;
}
if (str.length != len) {
return false;
}
if (!isNumber(str)) {
return false;
}
return true;
}
```
5. isMoney() 函数用于验证一个字符串是否符合货币格式,即允许有且仅有一个负号在开头,其余部分都是数字。如果字符串为空,或者不符合货币格式,函数返回`false`;否则,返回`true`。这在处理价格或金额时很有用,确保用户输入的数据是有效的货币值。
```javascript
function isMoney(str) {
if ("" == str) {
return false;
}
for (var i = 0; i < str.length; i++) {
var c = str.charAt(i);
if (i == 0) {
if (c != "-" && (c < "0" || c > "9")) {
return false;
} else if (c == "-" && str.length == 1) {
return false;
}
} else if (c < "0" || c > "9") {
return false;
}
}
return true;
}
```
这些函数在实际开发中非常实用,能够帮助开发者进行数据验证,提高用户体验并防止错误的数据输入。理解并运用这些函数,可以让你的JavaScript代码更加健壮和可靠。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-07-17 上传
2020-10-31 上传
2012-09-15 上传
Cheney16888
- 粉丝: 3
- 资源: 25
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析