最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript封裝的常用工具類庫bee.js用法詳解【經典類庫】

 更新時間:2018年09月03日 15:16:53   作者:老鼠擰刀滿街找貓  
這篇文章主要介紹了JavaScript封裝的常用工具類庫bee.js用法,結合實例形式詳細分析了經典類庫bee.js常見的手機、身份證、郵箱校驗,以及字符串操作、四則運算、正則驗證等相關操作的封裝與使用技巧,需要的朋友可以參考下

本文實例講述了JavaScript封裝的常用工具類庫bee.js。分享給大家供大家參考,具體如下:

bee.js下載地址:

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

或點擊此處本站下載

使用:

<!--area.js存放區(qū)域編碼的一個常量。由于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)
//判斷字符串是否相等,不區(qū)分大小寫
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)
//刪掉特殊字符(英文狀態(tài)下)
removeSpecialCharacter: function(input)
//只包含特殊字符、數字和字母(不包括空格,若想包括空格,改為[ -~])
isSpecialCharacterAlphanumeric: function(input)
/** 
* @param {String} message 
* @param {Array} arr 
* 消息格式化 
*/ 
format: function(message, arr)
//demo
var message='我是{0}開發(fā){1}';
var arr=['java','工程師'];
Bee.StringUtils.format(message,arr);

//結果
我是java開發(fā)工程師

/** 
* 把連續(xù)出現多次的字母字符串進行壓縮。如輸入: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:特殊字符,指英文狀態(tài)下的標點符號及括號等;
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面試之如何實現數組拍平(扁平化)方法

    JavaScript面試之如何實現數組拍平(扁平化)方法

    數組扁平化是指將一個多維數組變?yōu)橐痪S數組,下面這篇文章主要給大家介紹了關于JavaScript面試之如何實現數組拍平(扁平化)方法的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2021-11-11
  • ECMAScript中迭代器的深入講解

    ECMAScript中迭代器的深入講解

    在ECMAScript 6增加了一個對象,它不是新的語法或新的內置對象,而一種協議( 迭代器協議),所有遵守這個協議的對象,都可以稱之為迭代器,這篇文章主要給大家介紹了關于ECMAScript中迭代器的相關資料,需要的朋友可以參考下
    2021-08-08
  • js點擊返回跳轉到指定頁面實現過程

    js點擊返回跳轉到指定頁面實現過程

    這篇文章主要為大家詳細介紹了js點擊返回跳轉到指定頁面實現過程,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • Track Image Loading效果代碼分析

    Track Image Loading效果代碼分析

    Track Image Loading效果代碼分析...
    2007-08-08
  • 微信小程序云開發(fā)如何使用npm安裝依賴

    微信小程序云開發(fā)如何使用npm安裝依賴

    這篇文章主要為大家詳細介紹了微信小程序云開發(fā)如何使用npm安裝依賴,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 聊一聊對js包裝對象的理解

    聊一聊對js包裝對象的理解

    JavaScript中的基本類型通過自動裝箱和拆箱機制,可以臨時轉換為對應的包裝對象,以訪問屬性和方法,了解包裝對象的臨時性和手動創(chuàng)建方式有助于編寫更高效和正確的代碼,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • 詳解JavaScript如何實現四種常用排序

    詳解JavaScript如何實現四種常用排序

    這篇文章主要為大家介紹了如何利用JavaScript實現四個常用的排序:插入排序、交換排序、選擇排序和歸并排序,文中利用動圖詳細介紹了實現過程,需要的可以參考一下
    2022-02-02
  • 小程序canvas手寫簽名適配PC實現示例詳解

    小程序canvas手寫簽名適配PC實現示例詳解

    這篇文章主要為大家介紹了小程序canvas手寫簽名適配PC實現示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • JavaScript組合模式---引入案例分析

    JavaScript組合模式---引入案例分析

    這篇文章主要介紹了JavaScript組合模式,結合具體案例形式分析了JavaScript組合模式定義、應用與相關操作注意事項,需要的朋友可以參考下
    2020-05-05
  • 給Flash加一個超鏈接(推薦使用透明層)兼容主流瀏覽器

    給Flash加一個超鏈接(推薦使用透明層)兼容主流瀏覽器

    給一個Flash加一個超鏈接,原想直接在object外直接套一個超鏈接即可,試了之后卻發(fā)現不是這么回事
    2013-06-06

最新評論

佛坪县| 马山县| 丹阳市| 绥江县| 黔东| 彭水| 辛集市| 沙湾县| 西宁市| 叙永县| 澄江县| 铜梁县| 金湖县| 海原县| 宾阳县| 阳高县| 平武县| 桐城市| 灵石县| 新竹市| 苗栗县| 理塘县| 临猗县| 盐津县| 托克托县| 长治县| 广安市| 多伦县| 什邡市| 嘉义县| 中方县| 彩票| 胶南市| 布尔津县| 门头沟区| 灵宝市| 武定县| 磐安县| 民权县| 红原县| 盐池县|