• 字符串方法的整理


    在javascript中,除了对象,数组外,字符串也能存放东西,所以字符串的方法也很重要。

    1.字符串和数组有类似的东西,数组的length和下标在字符串中也使用。但区别是,length和下标在字符串的使用
    中是只读的,也就是不能用来改变字符串。不多说,看代码。

    var str="1134564654";
    str[0]="a";
    str.length=0;
    console.log(str,str.length)   //1134564654    10     
    //可以看到,length和下标的改变对字符串无影响
    

    2.和数组同名且使用相同的方法

    1)concat 拼接
    var str="1134564654";
    console.log(str.concat("adf","adf");   //拼接一个或多个字符串    返回新字符串,原字符串不变
    2)indexOf    indexLastOf查找
    var str="1134564654";
    console.log(str.indexOf("1")  //  0    找到出现在最前面的字符  返回下标
    console.log(str.indexLatOf("1")   //   1  找到出现在最后面的字符    返回下标
    3)slice 截取
    var str="1134564654";
    console.log(str.slice(0,-1))     //参数分别是起始位置和结束位置,截取至结束位置前一个,负数就倒着数,常用来去掉最后一个字符后面的符号
    

    3.和数组名不同的方法

    1)search  查找
    var str="1134564654";
    console.log(str.search(1)) //  0   返回下标,经常用在正则中查找字符
    2)match 查找
    console.log(str.match("4")  //    ["4", index: 3, input: "1134564654", groups: undefined]   
    //返回满足条件的数组 和数组中map方法类似。 返回的数组中包括:  [item,index,str,groups] ;
    3)replace 替换且只能替换一个
    console.log(str.replace("1","a");  // 返回新的字符串,原数组不变
    4)substr  截取
    console.log(str.substr(0,3));  //  113  返回截取出来的新字符串  0是起始位置,3是长度,和数组中splice一样
    5)substring  截取
    console.log(str.substring(3,1))   //  13 返回截取的新字符串  最大的不同:第一个参数可以大于第二个,就是说可以倒着截取
    6)split 切割, 去掉字符   和数组中join方法相反
    console.log(str.split("6")  //   ["11345", "4", "54"]   分开的字符串组成数组。
    

    4.split 方法的应用

    目的:把下面地址分隔开,存在对象中  {id:592153398282,spm:a21bz.7725273.1998564503.1.15333db8AK9mZC,umpChannel:qianggou}
    var str="https://detail.tmall.com/item.htm?id=592153398282&spm=a21bz.7725273.1998564503.1.15333db8AK9mZC&umpChannel=qianggou&u_channel=qianggou";
          function toObj(str){
                return str.split("?")[1].split("&").reduce(function(value,item){   //reduce 自带遍历的功能
                    var arr=item.split("=");
                    value[arr[0]]=arr[1];
                    return value;
                },{})
            }
            console.log(toObj(str));
    
  • 相关阅读:
    获取web应用路径 // "/" 表示class 根目录
    C++ Knowledge series Inheritance & RTTI & Exception Handling
    ATL
    GCC & Maker
    NoSQL(Not Only SQL)
    ECMAScript Regex
    C++ Knowledge series Conversion & Constructor & Destructor
    Cloud Computing
    C++ Knowledge series STL & Const
    Java Knowledge series 7
  • 原文地址:https://www.cnblogs.com/94-Lucky/p/13282390.html
Copyright © 2020-2023  润新知