JavaScript字符串函数大全

JS自带函数

1.Asc(x),Chr(x):转换字符,字符码

2。Filter:搜寻字符串数组中的特定字符串

格式:v=filter(x,s[,include[,compare]])

实例:

Dim x()={"kjwang","wangkj","peter"}

Dim v

v=filter(x,"kj") '结果v(0)="kjwang",v(1)="wangkj"

v=filter(x,"kj",false) '结果v(0)="peter"

v=filter(x,"kj",true,vbTextCompare) '不分大小写搜寻

3.InStr:寻找字符串位置(InstrRev:倒过来寻找字符串)

格式:

v=instr(x,y) '从x字符串第1个字符起找出y字符串出现的位置

v=instr(n,x,y) '从x字符串第n个字符起找出y字符串出现的位置

格式:

v=InstrRev(x,s[,n[,Compare]])

4。Join:将字符串连接

格式:v=join(x[,d])’d为分隔字符

5。Len(x):计算字符串x的长度

格式:v=len(x)

6.Left(x,n):返回字符串x左边n个字符(对应Right(x,n))

7。Mid:读取字符串x中间的字符

格式:v=mid(x,n,m)

8。LTrim(x),RTim(x),Trim(x)去空白字符

9.Replace:字符串取代

格式:v=Replace(x,s,r)

实例:x="i saw a saw a saw"

v=replace(x,"saw","so") 'v="i so a so a so"

10.Split:字符串分割

格式:v=split(s[,d])

实例:v=split("vb.net,iis6.0,asp.net",",")

'结果v(0)="vb.net",v(1)="iis6.0",v(2)="asp.net"

11.StrReverse:反转字符串

实例:v=strreverse("kjwang") 'v="gnawjk"

12.UCase(x),LCase(x):变换英文字母的大小写

实例:x="hello,VB中文!"

v=UCase(x) 'v="HELLO,VB中文!" 
1.取出日期时间

-1)DateValue(x),TimeValue(x)

格式:v=DateValue(x) :取出的“日期”部分

   v=timevalue(x) '类上

-2)Year(x),Month(x),Day(x)

格式:v=Year(x)

   v=Month(x)

   v=Day(x)

   Hour(x),Minute(x),Second(x):取出时,分,秒

-3)DateSerial(Y,M,D):合并年、月、日成为日期

实例:Dim v

v=DateSerial(1996,10,5) 'v=1996/10/5

   TimeSerial(H,M,S):合并时、分、秒成为时间

2.Now:读取系统日期时间

格式:v=now

3.Timer:从凌晨12:00:00AM起所经过的秒数

格式:v=timer

4.DatePart(p,x):取出年、月、日等各部分的数值

实例:Dim X=#2/10/1996 16:45:30#

v=DatePart("yyyy",X) 'v=1996年

v=DatePart("m",X) 'v=2月

v=DatePart("d",X) 'v=10日

v=DatePart("h",X) 'v=16时

v=DatePart("n",X) 'v=45分

v=DatePart("s",X) 'v=30秒

v=DatePart("q",X) 'v=1季(第一季,春季)

v=DatePart("y",X) 'v=41天(1996年的第41天)

v=DatePart("ww",X) 'v=6周(1996年的第6周)

v=DatePart("w",X) 'v=7(第6周的第7天,即星期六)

5。DateAdd(p,n,x):加减若干时间后的新日期时间

格式:v=DateAdd(p,n,x) 'p值同上如:"yyyy"、"m"等

实例:Dim x=#1/31/1996 16:45:30#

v=dateadd("yyyy",-3,x) '减3年,v=1993/1/31 16:45:30

6.DateDiff(p,x1,x2):计算两日期时间的差值 'p值同上

实例:dim x1=#12/31/1996 16:45:30#

x2=#2/10/1997 9:30:50#

v=datediff("yyyy",x1,x2) 'v=1年

7。FormatDateTime:日期时间的格式化

格式:v=formatdateyime(x[,日期格式])

日期格式值:DateFormat.GeneralDate 、 DateFormat.LongDate、

DateFotmat.ShortDate、DateFormat.LongTime、DateFormat.ShortTime

8.MonthName:返回月份名称

实例:v=monthname(5) 'v="五月"

9.WeekDayName:返回星期名称 ’用法同8.

 

/*
******************************************
                        字符串函数扩充                                 
******************************************
*/

/*
===========================================
//去除左边的空格
===========================================

*/
String.prototype.LTrim = function()
{
        return this.replace(/(^\s*)/g, "");
}


/*
===========================================
//去除右边的空格
===========================================
*/
String.prototype.Rtrim = function()
{
        return this.replace(/(\s*$)/g, "");
}

 

/*
===========================================
//去除前后空格
===========================================
*/
String.prototype.Trim = function()
{
        return this.replace(/(^\s*)|(\s*$)/g, "");
}

/*
===========================================
//得到左边的字符串
===========================================
*/
String.prototype.Left = function(len)
{

        if(isNaN(len)||len==null)
        {
                len = this.length;
        }
        else
        {
                if(parseInt(len)<0||parseInt(len)>this.length)
                {
                        len = this.length;
                }
        }
        
        return this.substr(0,len);
}


/*
===========================================
//得到右边的字符串
===========================================
*/
String.prototype.Right = function(len)
{

        if(isNaN(len)||len==null)
        {
                len = this.length;
        }
        else
        {
                if(parseInt(len)<0||parseInt(len)>this.length)
                {
                        len = this.length;
                }
        }
        
        return this.substring(this.length-len,this.length);
}


/*
===========================================
//得到中间的字符串,注意从0开始
===========================================
*/
String.prototype.Mid = function(start,len)
{
        return this.substr(start,len);
}


/*
===========================================
//在字符串里查找另一字符串:位置从0开始
===========================================
*/
String.prototype.InStr = function(str)
{

        if(str==null)
        {
                str = "";
        }
        
        return this.indexOf(str);
}

/*
===========================================
//在字符串里反向查找另一字符串:位置0开始
===========================================
*/
String.prototype.InStrRev = function(str)
{

        if(str==null)
        {
                str = "";
        }
        
        return this.lastIndexOf(str);
}

 

/*
===========================================
//计算字符串打印长度
===========================================
*/
String.prototype.LengthW = function()
{
        return this.replace(/[^\x00-\xff]/g,"**").length;
}

/*
===========================================
//是否是正确的IP地址
===========================================
*/
String.prototype.isIP = function()
{

        var reSpaceCheck = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;

        if (reSpaceCheck.test(this))
        {
                this.match(reSpaceCheck);
                if (RegExp.$1 <= 255 && RegExp.$1 >= 0 
                 && RegExp.$2 <= 255 && RegExp.$2 >= 0 
                 && RegExp.$3 <= 255 && RegExp.$3 >= 0 
                 && RegExp.$4 <= 255 && RegExp.$4 >= 0) 
                {
                        return true;     
                }
                else
                {
                        return false;
                }
        }
        else
        {
                return false;
        }
   
}


/*
===========================================
//是否是正确的长日期
===========================================
*/
String.prototype.isLongDate = function()
{
        var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})

$/); 
        if(r==null)
        {
                return false; 
        }
        var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); 
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]

&&d.getSeconds()==r[7]);

}

/*
===========================================
//是否是正确的短日期
===========================================
*/
String.prototype.isShortDate = function()
{
        var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); 
        if(r==null)
        {
                return false; 
        }
        var d = new Date(r[1], r[3]-1, r[4]); 
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}

/*
===========================================
//是否是正确的日期
===========================================
*/
String.prototype.isDate = function()
{
        return this.isLongDate()||this.isShortDate();
}

/*
===========================================
//是否是手机
===========================================
*/
String.prototype.isMobile = function()
{
        return /^0{0,1}13[0-9]{9}$/.test(this);
}

/*
===========================================
//是否是邮件
===========================================
*/
String.prototype.isEmail = function()
{
        return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);
}

/*
===========================================
//是否是邮编(中国)
===========================================
*/

String.prototype.isZipCode = function()
{
        return /^[\\d]{6}$/.test(this);
}

/*
===========================================
//是否是有汉字
===========================================
*/
String.prototype.existChinese = function()
{
        //[\一-\龥]為漢字﹐[\︰-\?]為全角符號
        return /^[\x00-\xff]*$/.test(this);
}

/*
===========================================
//是否是合法的文件名/目录名
===========================================
*/
String.prototype.isFileName = function()
{
        return !/[\\\/\*\?\|:"<>]/g.test(this);
}

/*
===========================================
//是否是有效链接
===========================================
*/
String.prototype.isUrl = function()
{
        return /^http[s]?:\/\/([\w-]+\.)+[\w-]+([\w-./?%&=]*)?$/i.test(this);
}


/*
===========================================
//是否是有效的身份证(中国)
===========================================
*/
String.prototype.isIDCard = function()
{
        var iSum=0;
        var info="";
        var sId = this;

        var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江

苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重

庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"***",71:"台湾",81:"香港",82:"澳

门",91:"国外"};

        if(!/^\d{17}(\d|x)$/i.test(sId))
        {
                return false;
        }
        sId=sId.replace(/x$/i,"a");
        //非法地区
        if(aCity[parseInt(sId.substr(0,2))]==null)
        {
                return false;
        }

        var sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));

        var d=new Date(sBirthday.replace(/-/g,"/"))
        
        //非法生日
        if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))
        {
                return false;
        }
        for(var i = 17;i>=0;i--) 
        {
                iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11);
        }

        if(iSum%11!=1)
        {
                return false;
        }
        return true;

}

/*
===========================================
//是否是有效的电话号码(中国)
===========================================
*/
String.prototype.isPhoneCall = function()
{
        return /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(this);
}


/*
===========================================
//是否是数字
===========================================
*/
String.prototype.isNumeric = function(flag)
{
        //验证是否是数字
        if(isNaN(this))
        {

                return false;
        }

        switch(flag)
        {

                case null:        //数字
                case "":
                        return true;
                case "+":        //正数
                        return                /(^\+?|^\d?)\d*\.?\d+$/.test(this);
                case "-":        //负数
                        return                /^-\d*\.?\d+$/.test(this);
                case "i":        //整数
                        return                /(^-?|^\+?|\d)\d+$/.test(this);
                case "+i":        //正整数
                        return                /(^\d+$)|(^\+?\d+$)/.test(this);                        
                case "-i":        //负整数
                        return                /^[-]\d+$/.test(this);
                case "f":        //浮点数
                        return                /(^-?|^\+?|^\d?)\d*\.\d+$/.test(this);
                case "+f":        //正浮点数
                        return                /(^\+?|^\d?)\d*\.\d+$/.test(this);                        
                case "-f":        //负浮点数
                        return                /^[-]\d*\.\d$/.test(this);                
                default:        //缺省
                        return true;                        
        }
}

/*
===========================================
//是否是颜色(#FFFFFF形式)
===========================================
*/
String.prototype.IsColor = function()
{
        var temp        = this;
        if (temp=="") return true;
        if (temp.length!=7) return false;
        return (temp.search(/\#[a-fA-F0-9]{6}/) != -1);
}

/*
===========================================
//转换成全角
===========================================
*/
String.prototype.toCase = function()
{
        var tmp = "";
        for(var i=0;i<this.length;i++)
        {
                if(this.charCodeAt(i)>0&&this.charCodeAt(i)<255)
                {
                        tmp += String.fromCharCode(this.charCodeAt(i)+65248);
                }
                else
                {
                        tmp += String.fromCharCode(this.charCodeAt(i));
                }
        }
        return tmp
}

/*
===========================================
//对字符串进行Html编码
===========================================
*/
String.prototype.toHtmlEncode = function()
{
        var str = this;

        str=str.replace(/&/g,"&amp;");
        str=str.replace(/</g,"&lt;");
        str=str.replace(/>/g,"&gt;");
        str=str.replace(/\'/g,"&apos;");
        str=str.replace(/\"/g,"&quot;");
        str=str.replace(/\n/g,"<br>");
        str=str.replace(/\ /g,"&nbsp;");
        str=str.replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;");

        return str;
}

/*
===========================================
//转换成日期
===========================================
*/
String.prototype.toDate = function()
{
        try
        {
                return new Date(this.replace(/-/g, "\/"));
        }
        catch(e)
        {
                return null;
        }
}
JavaScript常用字符串函数
最常用的字符串方法是:indexOf()、charAt()和substring()
indexOf()函数:

这个函数允许你判断一个字符串是否存在于一个更长的字符串中以及它所处的位置。它等价于C语言中的strstr函数以及Visual Basic语言中的

inStr函数。这个方法也有一个相应的函数:lastIndexOf(),这个函数字符串的另外一端搜索。

就象函数的名字所意味的,返回数值表明字符串在所搜索字符串中的位置。如果在被搜索的字符串中没有找到要查找的字符串就返回-1。这里

要注意,在JavaScript中-1是一个普通的整数,而不是一个布尔型(Boolen)的数。以下是具体例子:
var myString = "Have a nice day!";
alert(myString.indexOf("a")); //这里返回1
alert(myString.lastIndexOf("a")); // 这里返回 13 (最后一个a 所处于的位置)

在JavaScript中的数组的索引是从0开始,这跟C语言是遗言的。所以上面的语句alert(myString.indexOf("a"))是返回1,因为”a” 处于字符

串"Have a nice day!"的第二个位置。

细心一点,可能会发现字符串"Have a nice day!"还有一个字符"a",那怎么才能找到第二个字母"a"呢?这是一个很好的问题,为了做到这一

点,我们必须再介绍这个函数的第二个参数。第二个参数是一个整数,它指示了字符串中开始搜索的位置。

下面对代码进行一些来找到所有字符"a",具体代码如下:
var myString = "Have a nice day!";
var index = myString.indexOf("a");
while (index != -1) {
alert(index);
index = myString.indexOf("a", index + 1);
// start search after last match found
}
详细解释一下这段代码:变量index被初始化为第一个"a"所在的位置(如果没有"a",那么变量index就为-1)。然后再给出一个循环,条件是

index!=-1。在每次的循环中,我们将变量index加1,即从找到的"a"后面第一个字符开始继续查找,直至将所有的字符"a"找到为止。当再也没

有字符"a"在字符串变量mySring中找到的时候,就返回-1值,此时index就等于-1,不满足循环条件index!=-1,故导致循环结束。而alert

(index)语句的输出为:1,5,13。

charAt()函数:
这个函数返回在字符串中字符处在给定的位置。从本质上讲,它是substring()方法的一个特例,但是它也有自己的用途。如果你原来是个C语

言程序员或者其它相近的语言的程序员,那么你就能理解当引用字符的时候,可以利用string.charAt(index)来代替string[index]。
下面我们来在一个表单输入中使用这个函数。表单中有email地址,当然这个email地址要限制为字符、数字以及一个"@"符号。我们可以一次性

讲字符串分列为单个字符来对它进行强制。详细代码如下:
<SCRIPT language="JavaScript"> <!-- Hide from older browsers
var parsed = true;
var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-";
var email = prompt("What is your email address?", nobody@nowhere.com);
for (var i=0; i < email.length; i++) {
var letter = email.charAt(i).toLowerCase();
if (validchars.indexOf(letter) != -1)
continue;
alert("Invalid character: " + letter);
parsed = false;
break;
}
if (parsed) alert("Your email address contains all valid characters.");
// Stop hiding -->
</SCRIPT>

substring()函数:
这个函数通常使用于提取字符串的任何部分。它的参数是'start' 和'end'。开始的数值是第一个字符的索引,结束数值是返回部分之后的第一

个字符的索引。你可能听起来会觉得云里雾里的,但是一个最好的记忆方法是:返回字符串的长度等于end-start。
如果第二个参数省略了,那么它默认为直到字符串的结束。下面是几个例子:var str = "This is a string";
str.substring(1, 3); //结果为hi
str.substring(3, 1); //结果为hi
str.substring(0, 4); //结果为This
str.substring(8); //结果为hi
str.substring(8, 8); //结果为空
上面的第二个例子是说明了当start>end的时候,那么这两个参数自动转换.最后的例子显示了:当start等于end的时候,返回数值为空字符串.
JavaScript 字符串操作函数大全2009-10-03 01:50===========================================
//去除左边的空格
===========================================

*/
String.prototype.LTrim = function()
{
        return this.replace(/(^\s*)/g, "");
}


/*
===========================================
//去除右边的空格
===========================================
*/
String.prototype.Rtrim = function()
{
        return this.replace(/(\s*$)/g, "");
}

 

/*
===========================================
//去除前后空格
===========================================
*/
String.prototype.Trim = function()
{
        return this.replace(/(^\s*)|(\s*$)/g, "");
}

/*
===========================================
//得到左边的字符串
===========================================
*/
String.prototype.Left = function(len)
{

        if(isNaN(len)||len==null)
        {
                len = this.length;
        }
        else
        {
                if(parseInt(len)<0||parseInt(len)>this.length)
                {
                        len = this.length;
                }
        }
       
        return this.substr(0,len);
}


/*
===========================================
//得到右边的字符串
===========================================
*/
String.prototype.Right = function(len)
{

        if(isNaN(len)||len==null)
        {
                len = this.length;
        }
        else
        {
                if(parseInt(len)<0||parseInt(len)>this.length)
                {
                        len = this.length;
                }
        }
       
        return this.substring(this.length-len,this.length);
}


/*
===========================================
//得到中间的字符串,注意从0开始
===========================================
*/
String.prototype.Mid = function(start,len)
{
        return this.substr(start,len);
}


/*
===========================================
//在字符串里查找另一字符串:位置从0开始
===========================================
*/
String.prototype.InStr = function(str)
{

        if(str==null)
        {
                str = "";
        }
       
        return this.indexOf(str);
}

/*
===========================================
//在字符串里反向查找另一字符串:位置0开始
===========================================
*/
String.prototype.InStrRev = function(str)
{

        if(str==null)
        {
                str = "";
        }
       
        return this.lastIndexOf(str);
}

 

/*
===========================================
//计算字符串打印长度
===========================================
*/
String.prototype.LengthW = function()
{
        return this.replace(/[^\x00-\xff]/g,"**").length;
}

/*
===========================================
//是否是正确的IP地址
===========================================
*/
String.prototype.isIP = function()
{

        var reSpaceCheck = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;

        if (reSpaceCheck.test(this))
        {
                this.match(reSpaceCheck);
                if (RegExp.$1 <= 255 && RegExp.$1 >= 0
                 && RegExp.$2 <= 255 && RegExp.$2 >= 0
                 && RegExp.$3 <= 255 && RegExp.$3 >= 0
                 && RegExp.$4 <= 255 && RegExp.$4 >= 0)
                {
                        return true;    
                }
                else
                {
                        return false;
                }
        }
        else
        {
                return false;
        }

}


/*
===========================================
//是否是正确的长日期
===========================================
*/
String.prototype.isLongDate = function()
{
        var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})

$/);
        if(r==null)
        {
                return false;
        }
        var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]

&&d.getSeconds()==r[7]);

}

/*
===========================================
//是否是正确的短日期
===========================================
*/
String.prototype.isShortDate = function()
{
        var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
        if(r==null)
        {
                return false;
        }
        var d = new Date(r[1], r[3]-1, r[4]);
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}

/*
===========================================
//是否是正确的日期
===========================================
*/
String.prototype.isDate = function()
{
        return this.isLongDate()||this.isShortDate();
}

/*
===========================================
//是否是手机
===========================================
*/
String.prototype.isMobile = function()
{
        return /^0{0,1}13[0-9]{9}$/.test(this);
}

/*
===========================================
//是否是邮件
===========================================
*/
String.prototype.isEmail = function()
{
        return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);
}

/*
===========================================
//是否是邮编(中国)
===========================================
*/

String.prototype.isZipCode = function()
{
        return /^[\\d]{6}$/.test(this);
}

/*
===========================================
//是否是有汉字
===========================================
*/
String.prototype.existChinese = function()
{
        //[\一-\龥]為漢字﹐[\︰-\?]為全角符號
        return /^[\x00-\xff]*$/.test(this);
}

/*
===========================================
//是否是合法的文件名/目录名
===========================================
*/
String.prototype.isFileName = function()
{
        return !/[\\\/\*\?\|:"<>]/g.test(this);
}

/*
===========================================
//是否是有效链接
===========================================
*/
String.prototype.isUrl = function()
{
        return /^http[s]?:\/\/([\w-]+\.)+[\w-]+([\w-./?%&=]*)?$/i.test(this);
}


/*
===========================================
//是否是有效的身份证(中国)
===========================================
*/
String.prototype.isIDCard = function()
{
        var iSum=0;
        var info="";
        var sId = this;

        var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江 ",31:"上海",32:"江

苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北 ",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重

庆",51:"四川",52:"贵州",53:"云南",54:"西藏 ",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳

门",91:"国外 "};

        if(!/^\d{17}(\d|x)$/i.test(sId))
        {
                return false;
        }
        sId=sId.replace(/x$/i,"a");
        //非法地区
        if(aCity[parseInt(sId.substr(0,2))]==null)
        {
                return false;
        }

        var sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));

        var d=new Date(sBirthday.replace(/-/g,"/"))
       
        //非法生日
        if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))
        {
                return false;
        }
        for(var i = 17;i>=0;i--)
        {
                iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11);
        }

        if(iSum%11!=1)
        {
                return false;
        }
        return true;

}

/*
===========================================
//是否是有效的电话号码(中国)
===========================================
*/
String.prototype.isPhoneCall = function()
{
        return /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(this);
}


/*
===========================================
//是否是数字
===========================================
*/
String.prototype.isNumeric = function(flag)
{
        //验证是否是数字
        if(isNaN(this))
        {

                return false;
        }

        switch(flag)
        {

                case null:        //数字
                case "":
                        return true;
                case "+":        //正数
                        return                /(^\+?|^\d?)\d*\.?\d+$/.test(this);
                case "-":        //负数
                        return                /^-\d*\.?\d+$/.test(this);
                case "i":        //整数
                        return                /(^-?|^\+?|\d)\d+$/.test(this);
                case "+i":        //正整数
                        return                /(^\d+$)|(^\+?\d+$)/.test(this);                       
                case "-i":        //负整数
                        return                /^[-]\d+$/.test(this);
                case "f":        //浮点数
                        return                /(^-?|^\+?|^\d?)\d*\.\d+$/.test(this);
                case "+f":        //正浮点数
                        return                /(^\+?|^\d?)\d*\.\d+$/.test(this);                       
                case "-f":        //负浮点数
                        return                /^[-]\d*\.\d$/.test(this);               
                default:        //缺省
                        return true;                       
        }
}

/*
===========================================
//是否是颜色(#FFFFFF形式)
===========================================
*/
String.prototype.IsColor = function()
{
        var temp        = this;
        if (temp=="") return true;
        if (temp.length!=7) return false;
        return (temp.search(/\#[a-fA-F0-9]{6}/) != -1);
}

/*
===========================================
//转换成全角
===========================================
*/
String.prototype.toCase = function()
{
        var tmp = "";
        for(var i=0;i<this.length;i++)
        {
                if(this.charCodeAt(i)>0&&this.charCodeAt(i)<255)
                {
                        tmp += String.fromCharCode(this.charCodeAt(i)+65248);
                }
                else
                {
                        tmp += String.fromCharCode(this.charCodeAt(i));
                }
        }
        return tmp
}

/*
===========================================
//对字符串进行Html编码
===========================================
*/
String.prototype.toHtmlEncode = function()
{
        var str = this;

        str=str.replace(/&/g,"&amp;");
        str=str.replace(/</g,"&lt;");
        str=str.replace(/>/g,"&gt;");
        str=str.replace(/\'/g,"&apos;");
        str=str.replace(/\"/g,"&quot;");
        str=str.replace(/\n/g,"<br>");
        str=str.replace(/\ /g,"&nbsp;");
        str=str.replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;");

        return str;
}

/*
===========================================
//转换成日期
===========================================
*/
String.prototype.toDate = function()
{
        try
        {
                return new Date(this.replace(/-/g, "\/"));
        }
        catch(e)
        {
                return null;
        }

javascript 字符串函数总结  字符串函数: 
charAt():返回的是包含指定位置处的字符的字符串
charCodeAt():返回的是包含指定位置处的字符的字符编码
concat(): 把一个或多个字符串连接到String 对象的原始值上
indexOf(): 方法是从字符串的开头(位置0)开始检索子串,返回指定的子串在另一个字符串中的位置
lastIndexOf(): 方法是从字符串的结尾开始检索子串,返回指定的子串在另一个字符串中的位置
localeCompare():对字符串值进行排序,
 1.如果String 对象按照字母顺序排在参数中的字符串之前,返回负数
     (最常见的是-1,不过真正返回的值是由实现决定的)。
  2.如果String 对象等于参数中的字符串,返回0。
  3.如果String 对象按照字母顺序排在参数中的字符串之后,返回正数(最常见的是1,不过同样,真正返回的值是由实现决定的)。
slice(),substring():不改变String 对象自身的值,一个参数的时候,把参数作为起始位置,两个参数的时候,左闭右开,
对于负数参数,slice()方法会用字符串的长度加上参数,substring()方法则将其作为0处理(也就是说将忽略它)
大小写转换函数:toLowerCase()、toLocaleLowerCase()、toUpperCase()和toLocaleUpperCase()
split():把字符串按照特定分隔符处理,转化为Array,如果参数是空格,则把每个元素都拆分出来
例子:
  var sString=new String("hello-yes-uu");
    alert(sString.split("-"));
Array调用的函数:
join():以特定字符连接数组中的各个元素
例子:
  var oArray=new Array("red","yellow","black");
    alert(oArray.join("-"));    //red-yellow-black
concat():把新的字符串元素添加到数组中,原来元素不变
例子:
    var sString=new Array("h1","h2","h3");
    var sString2=sString.concat("h4","h5");
    alert(sString);  //h1,h2,h3
    alert(sString2);  //h1,h2,h3,h4,h5
slice():返回具有特定元素的新数组,用法和String的相似
toString():返回逗号连接各个元素的字符串
push():压栈
pop():出栈
shift():删除数组的第一个项,并作为函数值返回
unshift():把参数字符串放在数组的开头
reverse():颠倒数据项的排序
sort():按照升序排序,如果是数字,先转化成字符串,再排序
splice():
   1.删除——只需要声明两个参数,就可以从数组中删除任意多个项,这两个参数是要删除的第一个项的位置和要删除的项的个数。
        例如arr.splice(0,2)将删除数组arr中的前两项。
   2.替换而不删除——声明三个参数就可以把数据项插入指定的位置,这三个参数是起始位置、0(要删除的数组项的个数)和要插入的项。
       此外,还可以用第四个、第五个或更多个参数指定其他要删除的项。
       例如,arr.splice(2,0. "red", "green")将在位置2处插入"red"和"green"。
  3.替换并删除——声明三个参数就可以把数据项插入指定的位置,这三个参数是起始位置、要删除的数组项的个数以及要插入的项。
      此外,还可以指定要插入的更多的项。
      要插入的项的个数不必等于删除的项的个数。
      例如,arr.splice(2,1, "red","green")将删除数组arr中位置2处的项,然后在位置2处插入"red"和"green"。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值