JavaScript封装的常用工具类库bee.js用法详解【经典类库】


Posted in Javascript onSeptember 03, 2018

本文实例讲述了JavaScript封装的常用工具类库bee.js。分享给大家供大家参考,具体如下:

bee.js下载地址:

github下载地址:https://github.com/shadowOfCode/bee.js

或点击此处本站下载

使用:

<!--area.js存放区域编码的一个常量。由于bee.js里面的getPersonInfo18()方法需要调用这个常量,所以在bee.js之前引入。如果不需要用到这个方法也可以不引入area.js-->
<script type="text/javascript" src="js/area.js" ></script>
<script type="text/javascript" src="js/bee.js" ></script>

该javaScript库主要包括了如下模块:

1、手机号码校验;

//电话号码
isPhoneCallNum: function(input)
//电信手机号码
isChinaTelecomPhoneNum: function(input)
//中国联通
isChinaUnicomPhoneNum: function(input)
//中国移动
isChinaMobilePhoneNum: function(input)
//手机号码
isPhoneNum: function(input)
//手机号码简单校验,只校验长度 
isPhoneNumBySize: function(input)

2、身份证校验;

//18位身份证简单校验
isSimpleIdCard18: function(idCard)
//15位身份证简单校验
isSimpleIdCard15: function(idCard)
//18位身份证校验码校验
checkCode: function(idCard)
//18位身份证严格校验
isIdCard18: function(idCard)
//根据18身份证号码获取人员信息 
getPersonInfo18:function(idCard)
//Demo
Bee.IdCardUtils.getPersonInfo18('350624199506094038');
//结果
{
  address: "福建省 漳州市 诏安县",
  sex: "男",
  birthday: "1995年06月09日",
  age: 23
}

3、邮箱校验;

//邮箱校验 
isEmail: function(input)

4、字符串常用类;

//空字符串
isEmpty: function(input)
//不是空字符串
isNotEmpty: function(input)
//空字符串,可为空格
isBlank: function(input)
//不是空字符串,空格也算空字符串
isNotBlank: function(input)
//去掉字符串两边的空格
trim: function(input)
//若为null则转为”
trimToEmpty: function(input)
//以某个字符串开头
startsWith: function(input, prefix)
//以某个字符串结尾
endsWith: function(input, suffix)
//包含某个子串
contains: function(input, searchSeq)
//判断字符串是否相等
equals: function(input1, input2)
//判断字符串是否相等,不区分大小写
equalsIgnoreCase: function(input1, input2)
//是否包含空白字符
containsWhitespace: function(input)
//生成指定个数的字符
repeat: function(ch, repeatTimes)
//删除空白字符
deleteWhitespace: function(input)
//右侧补全
ightPad: function(input, size, padStr)
//左侧补全
leftPad: function(input, size, padStr)
//首小写字母转大写
capitalize: function(input)
//首大写字母转小写
uncapitalize: function(input)
//大写转小写,小写转大写
swapCase: function(input)
//统计含有的子字符串的个数
countMatches: function(input, sub)
//只包含字母
isAlpha: function(input)
//只包含字母、空格
isAlphaSpace: function(input)
//只包含字母、数字
isAlphanumeric: function(input)
//只包含字母、数字和空格 
isAlphanumericSpace: function(input)
//数字
isNumeric: function(input)
//小数
isDecimal: function(input)
//负小数
isNegativeDecimal: function(input)
//正小数
isPositiveDecimal: function(input)
//整数
isInteger: function(input)
//正整数
isPositiveInteger: function(input)
//负整数 
isNegativeInteger: function(input)
//只包含数字和空格
isNumericSpace: function(input)
//是否为空白字符
sWhitespace: function(input)
//是否全为小写字母
isAllLowerCase: function(input)
//是否全为大写字母
sAllUpperCase: function(input)
//字符串为空时,默认值
defaultString: function(input, defaultStr)
//字符串为空时,默认值
defaultIfBlank: function(input, defaultStr)
//字符串为空时,默认值
defaultIfEmpty: function(input, defaultStr)
//字符串反转
reverse: function(input)
//删掉特殊字符(英文状态下)
removeSpecialCharacter: function(input)
//只包含特殊字符、数字和字母(不包括空格,若想包括空格,改为[ -~])
isSpecialCharacterAlphanumeric: function(input)
/** 
* @param {String} message 
* @param {Array} arr 
* 消息格式化 
*/ 
format: function(message, arr)
//demo
var message='我是{0}开发{1}';
var arr=['java','工程师'];
Bee.StringUtils.format(message,arr);

//结果
我是java开发工程师
/** 
* 把连续出现多次的字母字符串进行压缩。如输入:aaabbbbcccccd 输出:3a4b5cd 
* @param {String} input 
* @param {Boolean} ignoreCase : true or false 
*/ 
compressRepeatedStr: function(input, ignoreCase)
//中文校验
isChinese: function(input)
//去掉中文字符
removeChinese: function(input)
//转义元字符
escapeMetacharacter: function(input)
//转义字符串中的元字符
escapeMetacharacterOfStr: function(input)
//中文转为unicode编码 
chineseToUnicode: function(input)

5、简单四则运算;

//加法 
add: function(operandLeft, operandRight)
//减法
subtract: function(operandLeft, operandRight)
//乘法
multiply: function(operandLeft, operandRight)
//除法
divide: function(operandLeft, operandRight)
//校验表达式的合法性
isArithmeticExpression: function(expression)
//计算
calculate: function(expression)
//中缀表达式转后缀表达式
infixToPostfixExpression: function(expression)
//demo
var expression='(2+9)*8-24';
Bee.ElementaryArithmeticUtils.infixToPostfixExpression(expression);

//结果
2 9 + 8 * 24 -
//中缀表达式转前缀表达式(结果以空格隔开) 
infixToPrefixExpression: function(expression)

//demo
var expression='(2+9)*8-24';
Bee.ElementaryArithmeticUtils.infixToPrefixExpression(expression);

//结果
- * + 2 9 8 24
//解决正负号问题-1转为0-1;+1转为0+1
eliminatePositiveOrNegativeSign: function(expression)
//把中缀表达式转为前缀表达式,再计算
calculateByPrefixExpression: function(expression)
//demo
var expression='(2+9)*8-24';
Bee.ElementaryArithmeticUtils.calculateByPrefixExpression(expression);

//结果
["64"]
//把中缀表达式转为后缀表达式,再计算 
calculateByPostfixExpression: function(expression)
//demo
var expression='(2+9)*8-24';
Bee.ElementaryArithmeticUtils.calculateByPostfixExpression(expression);

//结果
["64"]
//横式计算 
horizontalCalculation: function(expression)
var expression='1+2*(4-3)/5*[(7-6)/8*9]';
Bee.ElementaryArithmeticUtils.horizontalCalculation(expression);

//结果
1+2*(4-3)/5*[(7-6)/8*9]=1+2*1/5*[1/8*9]=1+2*1/5*1.125=1+2/5*1.125=1+0.4*1.125=1+0.45=1.45
//竖式计算 
verticalCalculation: function(expression)
var expression='1+2*(4-3)/5*[(7-6)/8*9]';
Bee.ElementaryArithmeticUtils.verticalCalculation(expression);

1+2*(4-3)/5*[(7-6)/8*9]
=1+2*1/5*[1/8*9]
=1+2*1/5*1.125
=1+2/5*1.125
=1+0.4*1.125
=1+0.45
=1.45

6、正则表达式生成工具类;

[ ] //生成正整数范围的表达式
positiveIntegerRange:function(minimum,maximum)

排除某些字符串,即不能包含某些字符串.返回值为RegExp对象

createRegexObjMustExclude:function(input, conditions)

参数说明

@param {Object} conditions:里面有多个属性,如下:
@param {String} matcherFlag 匹配标识
0:数字;
1:字母;
2:小写字母;
3:大写字母;
4:特殊字符,指英文状态下的标点符号及括号等;
5:中文;
6:数字和字母;
7:数字和小写字母;
8:数字和大写字母;
9:数字、字母和特殊字符;
10:数字和中文;
11:小写字母和特殊字符;
12:大写字母和特殊字符;
13:字母和特殊字符;
14:小写字母和中文;
15:大写字母和中文;
16:字母和中文;
17:特殊字符、和中文;
18:特殊字符、字母和中文;
19:特殊字符、小写字母和中文;
20:特殊字符、大写字母和中文;
100:所有字符;

@param {Array} targetStrArr 排除的字符串,数组格式
@param {String} length 长度,可为空。1,2表示长度1到2之间;10,表示10个以上字符;5表示长度为5
@param {Boolean} ignoreCase 是否忽略大小写

条件参数固定格式

 

conditions={matcherFlag:”0”,targetStrArr:[],length:”“,ignoreCase:true}
var conditions={matcherFlag:"0",targetStrArr:['12','00'],length:"10",ignoreCase:true}
Bee.RegexUtils.createRegexObjMustExclude("1234567009",conditions);
//生成的正则表达式
/^(?!.*(?:12|00))\d{10}$/i

校验时排除某些字符串,即不能包含某些字符串 
isPatternMustExclude: function(input, conditions)

//demo1,10位长度的数字,且不能包含12和00子串
var conditions={matcherFlag:"0",targetStrArr:['12','00'],length:"10",ignoreCase:true}
Bee.RegexUtils.isPatternMustExclude("1234567009",conditions);

//结果
false
//demo2,10位长度的数字,且不能包含120子串
var conditions={matcherFlag:"0",targetStrArr:['120'],length:"10",ignoreCase:true}
Bee.RegexUtils.isPatternMustExclude("1234567009",conditions);

//结果
true

必须同时包含某些字符串,返回值为RegExp对象

createRegexObjMustContain:function()
var conditions={matcherFlag:"0",targetStrArr:['120'],length:"10",ignoreCase:true}
Bee.RegexUtils.createRegexObjMustContain("1234567009",conditions);
/^(?=.*120)\d{10}$/i

校验必须同时包含某些字符串

isPatternMustContain: function(input, conditions)
//demo1
var conditions={matcherFlag:"0",targetStrArr:['120'],length:"10",ignoreCase:true}
Bee.RegexUtils.isPatternMustContain("1234567009",conditions);

false

//demo2
var conditions={matcherFlag:"0",targetStrArr:['12','00'],length:"10",ignoreCase:true}
Bee.RegexUtils.isPatternMustContain("1234567009",conditions);

true

更多关于JavaScript相关内容还可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
May 22 Javascript
表单验证插件Validation应用的实例讲解
Oct 10 Javascript
js字符串截取函数slice、substring和substr的比较
May 17 Javascript
JS获取IMG图片高宽的简单实例
May 17 Javascript
JS实现点击事件统计的简单实例
Jul 10 Javascript
jquery插件bootstrapValidator数据验证详解
Nov 09 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
Jan 12 Javascript
走进javascript——不起眼的基础,值和分号
Feb 24 Javascript
JS简单验证上传文件类型的方法
Apr 17 Javascript
vue.js如何将echarts封装为组件一键使用详解
Oct 10 Javascript
JavaScript函数、闭包、原型、面向对象学习笔记
Sep 06 Javascript
JavaScript实现网页计算器功能
Oct 29 Javascript
基于vue-router 多级路由redirect 重定向的问题
Sep 03 #Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
Sep 03 #jQuery
Vue-router的使用和出现空白页,路由对象属性详解
Sep 03 #Javascript
Vue 通过自定义指令回顾v-内置指令(小结)
Sep 03 #Javascript
JavaScript日期工具类DateUtils定义与用法示例
Sep 03 #Javascript
Angular5中状态管理的实现
Sep 03 #Javascript
JavaScript创建对象方法实例小结
Sep 03 #Javascript
You might like
短波收音机简介
2021/03/01 无线电
用PHP查询域名状态whois的类
2006/11/25 PHP
PHP中如何判断exec函数执行成功?
2016/08/04 PHP
索趣科技的答案
2007/02/07 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
jQuery CSS()方法改变现有的CSS样式
2014/08/20 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
JS实现仿微博可关闭弹出层效果
2015/09/21 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
uploader秒传图片到服务器完整代码
2017/04/22 Javascript
详解ES6之async+await 同步/异步方案
2017/09/19 Javascript
cordova入门基础教程及使用中遇到的一些问题总结
2017/11/14 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
vue 微信授权登录解决方案
2018/04/10 Javascript
微信小程序自定义组件之可清除的input组件
2018/07/17 Javascript
javascript实现手动点赞效果
2019/04/09 Javascript
浅谈一种让小程序支持JSX语法的新思路
2019/06/16 Javascript
pageGroup.js实现分页功能
2019/07/27 Javascript
vue组件内部引入外部js文件的方法
2020/01/18 Javascript
js判断鼠标移入移出方向的方法
2020/06/24 Javascript
python实现360皮肤按钮控件示例
2014/02/21 Python
python实现机器人行走效果
2018/01/29 Python
如何用Python实现简单的Markdown转换器
2018/07/16 Python
Django使用AJAX调用自己写的API接口的方法
2019/03/06 Python
python提取log文件内容并画出图表
2019/07/08 Python
Python使用20行代码实现微信聊天机器人
2020/06/05 Python
python简单利用字典破解zip文件口令
2020/09/07 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
趣味游戏活动方案
2014/02/07 职场文书
厕所文明标语
2014/06/11 职场文书
代理人委托书
2014/08/01 职场文书
小学生迎国庆演讲稿
2014/09/05 职场文书
JavaScript 与 TypeScript之间的联系
2021/11/27 Javascript
js判断两个数组相等的5种方法
2022/05/06 Javascript