JavaScript常用函数与正则表达式校验大全
本文系统整理了JavaScript中的核心内置函数,涵盖窗口交互、数组操作、日期处理及字符串格式化等常用功能。同时提供了登录名、密码、电话、邮箱等常见表单字段的正则表达式校验代码示例,帮助开发者快速实现前端数据验证与基础功能开发。
JavaScript常规函数
1. 常规函数
JavaScript中常用的基础函数主要包含以下9种:
(1) alert函数:用于弹出一个包含“确定”按钮的警告对话框。
(2) confirm函数:用于弹出一个包含“确定”和“取消”按钮的确认对话框。
(3) escape函数:负责将字符转换为Unicode编码格式。
(4) eval函数:用于解析并执行JavaScript代码字符串,返回表达式的计算结果。
(5) isNaN函数:用于检测传入的值是否为非数字类型,若是则返回true,否则返回false。
(6) parseFloat函数:将字符串解析并转换为浮点数。
(7) parseInt函数:将字符串解析并转换为整数,支持指定进制转换。
(8) prompt函数:显示一个输入对话框,提示用户等待输入。例如:
(9) unescape函数:用于解码由escape函数编码后的字符。
JavaScript数组函数
2. 数组函数
JavaScript数组对象主要包含以下4个常用函数:
(1) join函数:将数组中的所有元素连接并转换为一个字符串。例:
程序代码
function JoinDemo()
{
var a, b;
a = new Array(0,1,2,3,4);
b = a.join("-");//分隔符
return(b);//返回的b=="0-1-2-3-4"
}
(2) length属性:返回数组的长度。例:
程序代码
function LengthDemo()
{
var a, l;
a = new Array(0,1,2,3,4);
l = a.length;
return(l);//l==5
}
(3) reverse函数:将数组元素的顺序进行颠倒。例:
程序代码
function ReverseDemo()
{
var a, l;
a = new Array(0,1,2,3,4);
l = a.reverse();
return(l);
}
(4) sort函数:将数组元素按照字典顺序重新排序。例:
程序代码
function SortDemo()
{
var a, l;
a = new Array("X" ,"y" ,"d", "Z", "v","m","r");
l = a.sort();
return(l);
}
JavaScript日期函数
3. 日期函数
JavaScript Date对象主要包含以下20个函数:
(1) getDate函数:返回日期中的“日”部分,值为1~31。例:
程序代码
function DateDemo()
{
var d, s = "Today's date is: ";
d = new Date();
s += (d.getMonth() + 1) + "/";
s += d.getDate() + "/";
s += d.getYear();
return(s);
}
(2) getDay函数:返回星期几,值为0~6,其中0表示星期日,1表示星期一,...,6表示星期六。例:
程序代码
function DateDemo()
{
var d, day, x, s = "Today is: ";
var x = new Array("Sunday", "Monday", "Tuesday");
var x = x.concat("Wednesday","Thursday", "Friday");
var x = x.concat("Saturday");
d = new Date();
day = d.getDay();
return(s += x[day]);
}
(3) getHours函数:返回日期中的“小时”部分,值为0~23。例。
程序代码
function TimeDemo()
{
var d, s = "The current local time is: ";
var c = ":";
d = new Date();
s += d.getHours() + c;
s += d.getMinutes() + c;
s += d.getSeconds() + c;
s += d.getMilliseconds();
return(s);
}
(4) getMinutes函数:返回日期中的“分钟”部分,值为0~59。见上例。
(5) getMonth函数:返回日期中的“月”部分,值为0~11。其中0表示1月,2表示3月,...,11表示12月。见前面的例子。
子。
(6) getSeconds函数:返回日期中的“秒”部分,值为0~59。见前面的例子。
(7) getTime函数:返回自1970年1月1日以来的系统毫秒数。
程序代码
function GetTimeTest()
{
var d, s, t;
var MinMilli = 1000 * 60;
var HrMilli = MinMilli * 60;
var DyMilli = HrMilli * 24;
d = new Date();
t = d.getTime();
s = "It's been "
s += Math.round(t / DyMilli) + " days since 1/1/70";
return(s);
}
(8) getTimezoneOffset函数:返回当前地区与格林威治标准时间(GMT)的时差,单位为分钟。
程序代码
function TZDemo()
{
var d, tz, s = "The current local time is ";
d = new Date();
tz = d.getTimezoneOffset();
JavaScript字符串函数
if (tz 的链接点的名称,另一个函数link设定的URL地址。
(2) big函数:将字体加到一号,与...标签结果相同。
(3) blink函数:使字符串闪烁,与...标签结果相同。
(4) bold函数:使字体加粗,与...标签结果相同。
(5) charAt函数:返回字符串中指定位置的某个字符。
(6) fixed函数:将字体设定为固定宽度字体,与...标签结果相同。
(7) fontcolor函数:设定字体颜色,与标签结果相同。
(8) fontsize函数:设定字体大小,与标签结果相同。
(9) indexOf函数:从字符串左边开始查找,返回第一个匹配字符的下标index。
(10) italics函数:使字体成为斜体字,与...标签结果相同。
(11) lastIndexOf函数:从字符串右边开始查找,返回第一个匹配字符的下标index。
(12) length属性:返回字符串的长度。(不用带括号)
(13) link函数:产生一个超级链接,相当于设定的URL地址。
(14) small函数:将字体减小一号,与...标签结果相同。
(15) strike函数:在文本中间加一条横线,与...标签结果相同。
(16) sub函数:显示字符串为下标字(subscript)。
(17) substring函数:返回字符串中指定范围的几个字符。
(18) sup函数:显示字符串为上标字(superscript)。
(19) toLowerCase函数:将字符串转换为小写。
(20) toUpperCase函数:将字符串转换为大写。
常用正则表达式校验
//校验是否全由数字组成
程序代码
function isDigit(s)
{
var patrn=/^[0-9]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}
//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串
程序代码
function isRegisterUserName(s)
{
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
if (!patrn.exec(s)) return false
return true
}
//校验用户姓名:只能输入1-30个以字母开头的字串
程序代码
function isTrueName(s)
{
var patrn=/^[a-zA-Z]{1,30}$/;
if (!patrn.exec(s)) return false
return true
}
//校验密码:只能输入6-20个字母、数字、下划线
程序代码
function isPasswd(s)
{
var patrn=/^(\w){6,20}$/;
if (!patrn.exec(s)) return false
return true
}
//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
程序代码
function isTel(s)
{
//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/;
var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
if (!patrn.exec(s)) return false
return true
}
//校验手机号码:必须以数字开头,除数字外,可含有“-”
程序代码
function isMobil(s)
{
var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
if (!patrn.exec(s)) return false
return true
}
//校验邮政编码
程序代码
function isPostalCode(s)
{
//var patrn=/^[a-zA-Z0-9]{3,12}$/;
var patrn=/^[a-zA-Z0-9 ]{3,12}$/;
if (!patrn.exec(s)) return false
return true
}
//校验搜索关键字
程序代码
function isSearch(s)
{
var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;\'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;\'\,.<>?]{0,19}$/;
if (!patrn.exec(s)) return false
return true
}
程序代码
function isIP(s) //by zergling
{
var patrn=/^[0-9.]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}
什么时候该用JS构造器:与工厂模式、字面量的选择对比
2026-11-05 16:18:22
推荐几款轻量级JS照片墙开源库及对比
2026-11-05 15:56:19
JavaScript递归写法有哪些常见陷阱及避免方法
2026-11-05 14:53:38
JS数组浅拷贝与深拷贝怎么选?场景与方法总结
2026-11-05 14:41:02
p5.js 中 setup() 和 draw() 函数的执行机制详解
2026-11-05 12:32:38
