天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

javascript 自定義常用方法第1/2頁

比如說頁面的字符處理,js的正則表達(dá)式驗(yàn)證等等。下面我就將我自己淺薄的開發(fā)經(jīng)驗(yàn)綜合網(wǎng)上的龐雜資源稍稍綜合整理一下,省得自己以后要用到時(shí)再搜索了。這個(gè)系列我會(huì)將平時(shí)常用的函數(shù)歸納整理起來,全當(dāng)作是拋磚引玉吧。
Code is cheap.看代碼:
一、常見的字符串處理函數(shù)

// 返回字符的長(zhǎng)度,一個(gè)中文算2個(gè)
String.prototype.ChineseLength = function() {
return this .replace( / [ ^ /x00 - /xff] / g, " ** " ).length;
}

// 去掉字符串兩端的空白字符
String.prototype.Trim = function() {
return this .replace( / ( ^ /s + ) | (/s + $) / g, "" );
}

// 去掉字符左端的的空白字符
String.prototype.LeftTrim = function() {
return this .replace( / ( ^ [/s] * ) / g, "" );
}

// 去掉字符右端的空白字符
String.prototype.RightTrim = function() {
return this .replace( / ([/s] * $) / g, "" );
}

/* 忽略大小寫比較字符串是否相等
注:不忽略大小寫比較用 == 號(hào) */
String.prototype.IgnoreCaseEquals = function(str) {
return this .toLowerCase() == str.toLowerCase();
}

/* 不忽略大小寫比較字符串是否相等 */
String.prototype.Equals = function(str) {
return ( this == str);
}

/* 比較字符串,根據(jù)結(jié)果返回 -1, 0
返回值 相同:0 不相同:-1
*/
String.prototype.CompareTo = function(str) {
if ( this == str) {
return 0 ;
} else
return - 1 ;
}

// 字符串替換
String.prototype.Replace = function(oldValue, newValue) {
var reg = new RegExp(oldValue, " g " );
return this .replace(reg, newValue);
}

// 檢查是否以特定的字符串結(jié)束
String.prototype.EndsWith = function(str) {
return this .substr( this .length - str.length) == str;
}

// 判斷字符串是否以指定的字符串開始
String.prototype.StartsWith = function(str) {
return this .substr( 0 , str.length) == str;
}

// 從左邊截取n個(gè)字符
String.prototype.LeftSlice = function(n) {
return this .substr( 0 , n);
}

// 從右邊截取n個(gè)字符
String.prototype.RightSlice = function(n) {
return this .substring( this .length - n);
}

// 統(tǒng)計(jì)指定字符出現(xiàn)的次數(shù)
String.prototype.Occurs = function(ch) {
// var re = eval("/[^"+ch+"]/g");
// return this.replace(re, "").length;
return this .split(ch).length - 1 ;
}


/* 構(gòu)造特定樣式的字符串,用 <span></span> 包含 */
String.prototype.Style = function(style) {
return " <span style=/ "" .concat(style, " / " > " , this , " </span> " );
}

// 構(gòu)造類似StringBuilder的函數(shù)(連接多個(gè)字符串時(shí)用到,很方便)
function StringBuilder(str) {
this .tempArr = new Array();
}
StringBuilder.prototype.Append = function(value) {
this .tempArr.push(value);
return this ;
}
StringBuilder.prototype.Clear = function() {
this .tempArr.length = 0 ;
}
StringBuilder.prototype.toString = function() {
return this .tempArr.join( '' );
}

// 字符串常見方法及擴(kuò)展
function test() {
var testStr = " This is a test string " ;
var testStr2 = " 字符串 " ;
// alert(testStr.Trim());
// alert(testStr.LeftTrim());
// alert(testStr.RightTrim());
// alert(testStr2.ChineseLength());
// alert(testStr2.CompareTo(testStr));
// alert(testStr2.StartsWith("字符串"));
// document.write(testStr2.Style("color:red;width:100px"));
// alert(testStr2.LeftSlice(2));
// alert(testStr.RightSlice(7));
// alert(testStr.Occurs("s"));
/* StringBuilder測(cè)試 */
// var testStr3 = new StringBuilder("");
// testStr3.Append("test3/r/n");
// testStr3.Append("test3test3/r/n");
// testStr3.Append("test3");
// alert(testStr3.toString());
// testStr3.Clear();
// alert(testStr3.toString());
}

二、常用的正則表達(dá)式

/* -----------------------下面的函數(shù)還是涉及到了一些字符串的處理,但是當(dāng)作正則表達(dá)式的一部分看起來更合理----------------------------- */
// 檢查字符串是否由數(shù)字組成
String.prototype.IsDigit = function () {
var str = this .Trim();
return (str.replace( / /d / g, "" ).length == 0 );
}

// 校驗(yàn)字符串是否為浮點(diǎn)型
String.prototype.IsFloat = function () {
var str = this .Trim();
// 如果為空,則不通過校驗(yàn)
if (str == "" )
return false ;
// 如果是整數(shù),則校驗(yàn)整數(shù)的有效性
if (str.indexOf( " . " ) == - 1 ) {
return str.IsDigit();
}
else {
if ( / ^(/-?)(/d+)(.{1})(/d+)$ / g.test(str))
return true ;
else
return false ;
}
}

// 檢驗(yàn)是否是負(fù)整數(shù)
function isNegativeInteger(str) {
// 如果為空,則不通過校驗(yàn)
if (str == "" )
return false ;
if (str.IsDigit()) {
if (parseInt(str, 10 ) < 0 )
return true ;
else
return false ;
}
else
return false ;
}

// 檢驗(yàn)是否是負(fù)浮點(diǎn)數(shù)數(shù)
function isNegativeFloat(str) {
// 如果為空,則不通過校驗(yàn)
if (str == "" )
return false ;
if (str.IsFloat()) {
if (parseFloat(str, 10 ) < 0 )
return true ;
else
return false ;
}
else
return false ;
}

// 是否是由字母組成的字符串
function isCharacter(str) {
return ( / ^[A-Za-z]+$ / .test(str));
}

// 是否是字母、數(shù)字組成的字符串
function isNumberCharacter(str) {
return ( / ^[A-Za-z0-9]+$ / .test(str));
}

// 是否是email
function isEmail(str) {
return ( / (/S)+[@]{1}(/S)+[.]{1}(/w)+ / .test(str))
}

// 是否是url(評(píng)注:網(wǎng)上流傳的版本功能很有限,下面這個(gè)基本可以滿足需求)
function isUrl(str) {
return ( / ([a-zA-z]+:/ / / / )?[^s]* / .test(str));
}

// 是否是ip地址
function isIpAddress(str) {
return / (/d+)/.(/d+)/.(/d+)/.(/d+) / .test(str);
}

// 是否是漢字組成的字符串
function isChinese(str) {
return ( / ^[/u4e00-/u9fa5]+$ / .test(str));
}

// 是否是雙字節(jié)字符(包括漢字在內(nèi))
function isUnicode(str) {
return ( / ^[/x00-/xff]+$ / .test(str));
}

// 是否是電話號(hào)碼
function isTelephone(str) {
// 兼容格式: 國(guó)家代碼(2到3位)-區(qū)號(hào)(2到3位)(-)?電話號(hào)碼(7到8位)-分機(jī)號(hào)(3位)
return ( / ^(([0/+]/d{2,3}-)?(0/d{2,3}))?[-]?(/d{7,8})(-(/d{3,}))?$ / .test(str));
}

// 是否是手機(jī)號(hào)碼
function isMobilePhone(str) {
return ( / ^((/(/d{3}/))|(/d{3}/-))?1[3,5]/d{9}$ / .test(str));
}

// 是否是QQ號(hào)碼(騰訊QQ號(hào)從10000開始)
function isQQNumber(str) {
return ( / ^[1-9][0-9]{4,}$ / .test(str));
}

// 是否是國(guó)內(nèi)的郵政編碼(中國(guó)郵政編碼為6位數(shù)字)
function isMailCode(str) {
return ( / /d{6} / .test(str));
}

// 是否是國(guó)內(nèi)的身份證號(hào)碼
function isIdNumber(str) {
return ( / /d{15}|/d{18} / .test(str));
}

關(guān)于正則表達(dá)式,網(wǎng)上還有很多的有深度的文章,我這里就拷貝幾段常用的代碼了,其實(shí)學(xué)懂了基本的正則知識(shí)后普通的驗(yàn)證不過是小菜一碟,不再贅述。

JavaScript技術(shù)javascript 自定義常用方法第1/2頁,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 动漫美女脱小内内露尿口 | 伊人久99久女女视频精品免 | 国产精品在线手机视频 | 欧美色图一区二区三区 | 精品国产5g影院天天爽 | 亚洲中文字幕一二三四区苍井空 | 小小水蜜桃视频高清在线播放 | 热re99久久精品国99热 | 纲手胸被爆羞羞免费 | 亚洲一区乱码电影在线 | 手机在线观看无码日韩视频 | 亚洲成人黄色在线 | 忘忧草在线影院WWW日本动漫 | 和老外3p爽粗大免费视频 | 亚洲精品国产自在现线最新 | 日本工口生肉全彩大全 | 偷窥 亚洲 色 国产 日韩 | 欧美亚洲另类图片 | 先锋影音av最新资源网 | 女人高潮了拔出来了她什么感觉 | 亚洲综合小说久久另类区 | caoporn 免费视频 | 日韩精品特黄毛片免费看 | 亚洲熟女片嫩草影院 | good神马电影伦理午夜 | 忘忧草在线社区WWW日本直播 | 黄子佼81岁父亲现状曝光 | 兔费看少妇性L交大片免费 偷偷要色偷偷 | 久久精品一区 | 久久99r66热这里有精品 | 久久热这里只有 精品 | 激情内射亚洲一区二区三区 | xxx性欧美在线观看 xxx性欧美在线 | 蜜桃99影院| 迅雷哥在线观看高清 | 最新亚洲人成网站在线影院 | 亚洲精品一线二线三线无人区 | 欧美激情精品久久久久 | 日本红怡院亚洲红怡院最新 | www在线小视频免费 www伊人网 | 国产成人无码免费精品果冻传媒 |