zoukankan      html  css  js  c++  java
  • Javascript String类的属性及方法

    String 类 Attribute and method
    anchor()              创建一个<a>标签的实例,将其name属性设置为被传递给此方法的字符串
    big()                     将字符串转换为<big>标签的一个实例
    blink()                   将字符串转换为<blink>标签的一个实例
    bold()                   将字符串转换为<bold>标签的一个实例
    charAt()               返回传递给此方法的索引处的字符
    concat()               连接被传递的两个字符串返回一个新字符串。
    fixed()                  将字符转换<tt> 固定的pitch字体标签的一个实例
    fontcolor()            设置一个<font>标签实例的color属性
    fontsize()             设置一个<font>标签实例的size属性
    fromCharCode()   返回被传递给此方的ISO-Latin-1数字字符
    indexOf()              返回被传递给此方法的字符串在一个sting对象的实例中第一次出现的索引
    italics()                  将字符串转换为<i>标签的一个实例
    lastIndexOf()         返回被传递给此方法的字符串在一个sting对象的实例中最后一次出现处的索引
    link()                      将字符串转换为<a>标签的一个实例并且用被传递给此方法的URL设置的herf属性
    match()                 返回一个数组,此数组包含革于被传递给此方法的规则表达式而找到的匹配。
    replace()               用被传递给此方法的规则表达式和替换字符串对调,用它的strin实例执行一个查找和替换。
    search()               返回被传递给此方法的字符串中找到的匹配的索引位置。如果没有找到字符中距离,返回-1
    Slice()                   返回被传递给此方法的开始和结束索引之间的字符串。如果传递一个负值,索引以被传递的字符串尾部作为参考。
    Small()                  将字符串换为<small>标签的一个实例
    Split()     返回被分割为段的字符串,这个分割由被传递给此方法的字符串和实例限制定义
    Strike()                  将字符串转换为<strike>标签的一个实例
    Sub()     将字符串转换为<sub>标签的一个实例
    Substr()                返回从被索引位置开始包含要返回的一定个数的字符的字符串。如果一个负值被传递,索引以被传递的字符串的尾部作为参考
    substring()            返回被传递的开始和结束索引之间的字符
    sup()                     将字符串转换为<sup>标签的一个实例
    toLowerCase()     将字符串中的所有字符转换为小写
    toSource()             返回被传递的字符作为string对象的字符串表示
    toString()               将被传递的字符作为string类型返回
    toUpperCase()      将字符串中的所有字符转换为大写
    length()                 返回字符串的长度
    prototype()           为程序提供一种向string对象实例添加属性的能力

    String 类的扩展:
    String.prototype.ToCharArray=function(){
             return this.split("");
    }
    //倒序
    String.prototype.Reverse = function(){
    return this.split("").reverse().join("");
    }
    //是否包含指定字符
    String.prototype.IsContains = function(str){
    return (this.indexOf(str) > -1) ;
    }
    //判断是否为空
    String.prototype.IsEmpty=function(){
    return this=="";
    }
    //判断是否是数字
    String.prototype.IsNumeric = function(){
    var tmpFloat=parseFloat(this);
    if(isNaN(tmpFloat)) return false;
    var tmpLen=this.length-tmpFloat.toString().length;
    return tmpFloat+"0".GetSame(tmpLen)==this;
    }
    //判断是否是整数
    String.prototype.IsInt = function(){
    if(this == "NaN") return false;
    return this == parseInt(this).toString();
    }
    //合并多个空白为一个空白
    String.prototype.resetBlank = function(){
    return this.replace(/s+/g,"");
    }
    //除去左边空白
    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.getNum = function(){
        return this.replace(/[^d]/g,"");
    }
    // 保留字母
    String.prototype.getEn = function(){
        return this.replace(/[^A-Za-z]/g,"");
    }
    // 保留中文
    String.prototype.getCn = function(){
        return this.replace(/[^u4e00-u9fa5uf900-ufa2d]/g,"");
    }
    //获取字节长度
    String.prototype.ByteLength=function()
    {
    return this.replace(/[^x00-xff]/g,"aa").length;
    }
    // 从左截取指定长度的字串
    String.prototype.left = function(n){
        return this.slice(0,n);
    }
    // 从右截取指定长度的字串
    String.prototype.right = function(n){
        return this.slice(this.length-n);
    }
    // HTML编码
    String.prototype.HTMLEncode = function(){
        var re = this;
        var q1 = [/x26/g,/x3C/g,/x3E/g,/x20/g];
        var q2 = ["&","<",">"," "];
        for(var i=0;i<q1.length;i++)
        re = re.replace(q1[i],q2[i]);
        return re;
    }
    //获取Unicode
    String.prototype.Unicode = function(){
    var tmpArr=[];
    for (var i=0; i<this.length; i++) tmpArr.push("&#" + this.charCodeAt(i) + ";");
    return tmpArr.join("");
    }
    //指定位置插入字符串
    String.prototype.Insert=function(index,str){
    return this.substring(0,index)+str+this.substr(index);
    }
    //复制字符串
    String.prototype.Copy=function(){
    if(IE) window.clipboardData.setData("text",this.toString());
    }
    //追加格式化后的字符串
    String.prototype.AppendFormat=function(str){
    var arg=arguments;
    str=str.replace(/{(d+)}/g,function(a,b,c)
    {
       if(arg[parseInt(b)+1]) return arg[parseInt(b)+1];
       else return a;
    });
    return this+str;
    }


    创建一个String 对象,语法:new String(stringValue),这个调用会将参数转换为字符串,并作为一个String 对象。事实上任何一个字符串常量都是一个String对象,可以将其直接作为对象来使用,这和使用new String()创建对象的区别是:typeof的返回值不同,一个是“stirng",另一个是"object".

    string.indexOf(searchString,position)----从position(可选)位置开始,搜索字符串中的第一个searchSting所出现的位置并返回。例如:"hello,jack".indexOf("hello")将返回0;
    "abcabc".indexOf("a",1)将返回3;

    string.lastIndexOf(searchString,position)--------从position(可选)位置开始,搜索字符串中的最后一个searchString所出现的位置并返回。如:"abcabc".lastIndexOf("b")将返回4

    string.charAt(pos)-------返回字符串中位置为pos的字符。例如:"abc".charAt(1)返回"b"

    stirng.charCodeAt(pos)------返回字符串中位置为pos的字符代码。对于ASCII 字符,这将返回其ASCII代码。例如:"abc".charCodeAt(0)返回97,表示字符"a"的ASCII码。

    string.slice(start,end)--------返回字符串中起始位置为start,结束位置为end(不包括end)的子字符串

    string.split(separator,linmit)------将字符串以separator作为分割符切割成多个子字符串,并将他们作为一个数组返回。linmit(可选)表示数组的最大长度,超过的部分将被舍弃。separator分隔符不被包含在任何子字符串中,如果sepatator为空字符串,则返回字符串中的字符序列组成的数组。如果split方法没有任何参数,则返回仅包含字符串本身,仅有一个元素的数组。

    string.split(separator,linmit)-------例如:"a1,b1,c1".split(",")将返回["a1","b1","c1"];

    "a,b,c".split(",",2)将返回["a","b"];

    "a,b,c".split("")将返回["a",",","b",",","c"];

    "ab,c".split()将返回["ab,c"]
    string.substr(start,length)--------返回字符串中起始位置为start,长度为length的子字符串。例如:"abcdefg".substr(1,3)将返回"bcd";

    string.substring(start,end)------返回字符串中起始位置为start,结束位置为end(包括end)的子字符串。这个方法和slice方法唯一不同体现在是否包含了end位置的字符。


    替换和匹配字符串


    (1)replace(searchValue,replaceValue)方法
                 该方法将字符串中第一个出现的searchValue子字符串替换为replaceValue,并返回新的字符串。原有的字符串不受影响。

    例如:var str1="aaaa";

    var str2=str1.replace("a","b");

    alert(str2);//输出"baaa"
    alert(str1);//输出"aaaa"

    上面代码中可以看出,使用replace函数仅能替换一个实例。如果要替换多个实例,则需要使用正则表达式,例如str.replace(/a/g,"b")能够将"aaaa"替换为"bbbb".

    (2)match(reExp)方法

    从字符串中搜索出匹配regExp正则表达式的所有子字符串,将他们作为一个数组返回。利用对象类型到布尔类型的转换规则,还可以判断一个字符串是否匹配regExp表示的正则表达式。

    例如:var strInput=prompt("请输入一个数字:",0);

    while(!strInput.match(/d+/)){
              strInput=prompt("请输入一个数字:",0);
    }

    (3)search(regExp)方法

    从字符串中搜索出匹配regExp正则表达式的第一个子字符串,返回其索引位置。例如:var str="aabcabcabc";

    alert(str.search(/abc/g));//显示“1”

    (4)String 对象的大小写转换

    var str="abc";

    str.toLowerCase()//转化小写

    str.toUpperCase()//转化大写

    (5)String 对象的连接

    var str="abc";

    var str2=str.concact("def","ghi");

    alert(str2);//将输出"abcdefghi"

  • 相关阅读:
    多线程
    关于并发和并行
    文件系统
    java.util.Arrays类
    程序管理与SElinux
    用户和用户组管理总结
    useradd和adduser
    打印可见字符
    cmd中控制某个命令执行多少次
    keras模块之-优化器(optimizers)--笔记
  • 原文地址:https://www.cnblogs.com/pxuan/p/6780712.html
Copyright © 2011-2022 走看看