JavaScript字符串与数组方法整理

Posted mercy-up

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript字符串与数组方法整理相关的知识,希望对你有一定的参考价值。

字符串(String)的方法:

代码后面的都是返回值

var str = "atusdgafsvg";
var str1 = "123456789";
var str0 = "sdasd tuyt weq fhf sw ss f g g";
var str5 = "Wdfdf T SDFDFdfdf";
            
//方法:
//常用:
    //1. charAt()   返回指定索引处的字符
    console.log(str.charAt(4));   //d
            
    //2. charCodeAt()    返回指定索引处的unicode字符
    console.log(str.charCodeAt(4));    //100
    console.log(str.charCodeAt(1));    //116
            
    //3. indexOf    判断一个字符第一次出现在某个字符串的索引,如果包含返回它的索引,如果不包含返回-1
    console.log(str.indexOf("s"));    //3
    console.log(str.indexOf("i"));    //-1
            
    //4. lastIndexOf   判断一个字符最后一次出现在某个字符串的索引,如果包含返回它的索引,如果不包含返回-1
    console.log(str.lastIndexOf("s"));    //8
    console.log(str.lastIndexOf("q"));    //-1
            
    //5. concat    拼接2个字符串,返回一个新字符串,对原有字符串没有任何改变
    var str2 = str.concat(str1);
    console.log(str2);     //atusdgafsvg123456789
            
    //6. substr(n,m)      从索引n开始,截取m个字符,将截取的字符返回,对原字符串没有任何改变,包括m,n可以是负值,-1从字符串最后一位开始计算
    console.log(str.substr(1,5));    //tusdg
    console.log(str.substr(-2));      //vg
            
    //7. substring(n,m)     从索引n开始,截取到索引m,不包括m.将截取的字符返回,对原字符串没有任何改变,不接受负值
    console.log(str.substring(3,4));    //s
    console.log(str.substring(6));      //afsvg 
            
    //8. slice(n,m)     从索引n开始,截取到索引m,不包括m.将截取的字符返回,对原字符串没有任何改变,n可以是负值
    console.log(str.substring(-7,4));    //atus
    console.log(str.substring(9));       //vg
            
    //9. split     用指定字符分割字符串,返回一个数组.对原字符串没有任何改变
    document.write(str0.split("",3) + "<br />");    //atus
    document.write(str0.split(" ")); 
            
    //10. replace(‘a‘,1);    替换指定字符,返回替换后新的字符串,对原有字符串有改变。(第一个参数可以是正则表达式) 只能替换一次 ,配合正则模              式修饰符g使用
    console.log(str.replace("s",4));      //atu4dgafsvg
    console.log(str.replace("d","%"));    //atus%gafsvg
            
    //11. match()      可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。把找到的字符放在数组里,返回一个数组
    console.log(str.match("atu"));        //[atu]
    console.log(str.match("atu000"));     //null
            
    //12. search()    方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,没有就返回-1
    console.log(str.search("fsvg"));       //7
    console.log(str.search("atu"));        //0
    console.log(str.search("atu000"));     //-1
            
//不常用:
    //1. fixed()     方法用于把字符串显示为打字机字体
    document.write("<br />"); 
    document.write(str.fixed());       //atusdgafsvg
            
    //2. fontcolor()      方法用于按照指定的颜色来显示字符串
    document.write("<br />"); 
    document.write(str.fontcolor("Red"));      //atusdgafsvg   红色 
            
    //3. fontsize()     方法用于按照指定的尺寸来显示字符串
    document.write("<br />"); 
    document.write(str.fontsize(10));      //atusdgafsvg
            
    //4. fromCharCode()     可接受一个指定的 Unicode 值,然后返回一个字符串
    document.write("<br />");
                
        document.write(String.fromCharCode(72,69,76,76,79));       //HELLO
    document.write("<br />");
             
        document.write(String.fromCharCode(65,66,67));         //ABC
            
    //5. italics()     方法用于把字符串显示为斜体
    document.write("<br />");
    document.write(str.italics());       //atusdgafsvg    斜体
            
    //6. lastIndexOf()     方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索,区分大小写,如果没有找到,就返                  回-1
    document.write("<br />");
    document.write(str.lastIndexOf("dga") + "<br />");      //4
    document.write(str.lastIndexOf("Dga") + "<br />");      //-1
    document.write(str.lastIndexOf("dGa"));                 //-1
            
    //7. link()     方法用于把字符串显示为超链接
    document.write("<br />");
    document.write(str.link("atusdgafsvg"));         //atusdgafsvg   有下划线
            
    //8. toLocaleLowerCase()和toLowerCase()      将字符串转换为小写,与 toLowerCase() 不同的是,toLocaleLowerCase()             方法按照本地方式把字符串转换为小写。只有几种语言(如土耳其语)具有地方特有的大小写映射,所有该方法的返回值通常与 toLowerCase() 一样
    document.write("<br />");
    document.write(str5.toLowerCase());          //wdfdf t sdfdfdfdf
    document.write("<br />");
    document.write(str5.toLocaleLowerCase());     //wdfdf t sdfdfdfdf
        
    //9. toLocaleUpperCase()和toUpperCase()       将字符串转换为大写,与 toUpperCase() 不同的                 是,toLocaleUpperCase() 方法按照本地方式把字符串转换为大写。只有几种语言(如土耳其语)具有地方特有的大小写映射,所有该方法的返回值通常与             toUpperCase() 一样
    document.write("<br />");
    document.write(str5.toUpperCase());          //WDFDF T SDFDFDFDF
    document.write("<br />");
    document.write(str5.toLocaleUpperCase());       //WDFDF T SDFDFDFDF    

数组(Array)的方法:

代码后面的都是结果

                        var arr = [1,2,3,4];
            var arr1 = ["mercy","devil","hita"];
//            方法:
//            1. 不改变原数组:
            //1.1  concat()     方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
            var arr3 = [];
            document.write(arr3.concat(arr,arr1));      //1,2,3,4,mercy,devil,hita
            
            //1.2 shift()     方法用于把数组的第一个元素从其中删除,并返回第一个元素的值    
            document.write("<br />");
            document.write(arr.shift());     //1
            
            //1.3 slice(n,[m])       方法可从已有的数组中返回选定的元素,m为可选,从n开始到m结束,不包括m
            document.write("<br />");
            document.write(arr.slice(1,3));     //3,4
            
            //1.4 sort()     方法用于对数组的元素进行排序,有一定的局限性,只按照第一个来排序
            document.write("<br />");
            var arr5 = [5,3,8,9,1,7];
            document.write(arr5.sort());      //1,3,5,7,8,9
            document.write("<br />");
            var arr6 = [5,3,8,9,10,7,1];
            document.write(arr6.sort());        //1,10,3,5,7,8,9
            
            //1.5 
            
//            2. 改变原数组:
            //2.1 join()     方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,分隔符,不写的话,默认为逗号分隔
            document.write("<br />");
            var arr4 = [];
            arr4[0] = 1;
            arr4[1] = 2;
            arr4[2] = 3;
            arr4[3] = 4;
            arr4[4] = 5;
            document.write(arr4.join("^"));      //1^2^3^4^5
            
            //2.2 pop()      方法用于删除并返回数组的最后一个元素
            document.write("<br />");
            document.write(arr1.pop());     //hita
            
            //2.3 push()      方法可向数组的末尾添加一个或多个元素,并返回新的长度
            document.write("<br />");
            document.write(arr4.push("9"));        //6
            
            //2.4 reverse()      方法用于颠倒数组中元素的顺序
            document.write("<br />");
            document.write(arr.reverse());        //4,3,2,1
            
            //2.5 splice(n,m,i)       方法向/从数组中添加/删除项目,然后返回被删除的项目,n和m都是必填的,n是从第几位开始删除,m是删除几位,i是                   添加的值,可以有多个i
            document.write("<br />");
            document.write(arr4);             //1,2,3,4,5,9
            document.write("<br />");
            document.write(arr4.splice(2,2));        //3,4
            document.write("<br />");
            document.write(arr4);            //1,2,5,9
            document.write("<br />");        
            document.write(arr4.splice(2,1,8));       //5
            document.write("<br />");
            document.write(arr4);         //1,2,8,9
            
            //2.6 unshift()      方法可向数组的开头添加一个或更多元素,并返回新的长度
            document.write("<br />");
            document.write(arr);             //4,3,2
            document.write("<br />");
            document.write(arr.unshift(5));      //4
            document.write("<br />");
            document.write(arr);          //5,4,3,2            

 

以上是关于JavaScript字符串与数组方法整理的主要内容,如果未能解决你的问题,请参考以下文章

10个JavaScript代码片段,使你更加容易前端开发。

JavaScript 代码片段

JavaScript 片段

精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解!(转载)

JavaScript 数组基本操作

几个关于js数组方法reduce的经典片段