String对象和数组的异同

1.创建字符串和数组的方法

    1.1  创建字符串的方法

             A.直接量:var str = "  ";

        B.字符串对象创建: new String("");

    1.2  创建数组的方法

            A. var   arr = [ element.....];

            B.  var  arr  =  new  Array();//创建一个数组对象

            C. var  arr = new  Array(5);//创建一个数组并指明长度为5

            D.  var  arr  = new Array([elment,   element1,  elemet2......]);//创建数组对象并赋值

2.String对象和数组的属性是相同的

            2.1.  constrcutor

       2.2.  prototype

       2.3.  length:   str.length可以获取字符串长度   arr.length可以获取数组的长度

3.String对象和数组方法的异同之处(这里小编只挑一些经常用到的)

           3.1   String对象-----索引相关

    (1)charAt(index):通过索引值查找,返回指定字符

    (2)indexOf(searchvalue,start):返回指定字符首次出现的位置

    (3)lastIndexOf(searchvalue,start):返回指定字符最后出现的位置

    (4)charCodeAt(index):返回指定字符的Unicode编码,介于0 - 65535的数字

              (5)replace(searchvalue,newvalue)replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串

                (6)search(searchvalue)  方法用于查找与字符串或者正则表达式相匹配的String对象的起始位置

<script>
  var str = "a123456789";
        console.log(str.charAt(0));        //索引值
        console.log(str.indexOf(2));      //=>2  返回2首次出现的位置
        console.log(str.lastIndexOf(8));//=>3  返回8最后出现的位置
        console.log(str.replace("9","b"));// =>b  把所有9替换成b
        console.log(str.search("234"));  //=>2  返回第一个字符的位置
        console.log(str.charCodeAt(1));  //=>49  返回Unicode编码
</script>

           

             3.2  数组对象----索引相关

                (1)copyWithin(traget, start ,  end)方法用于从数组的指定位置拷贝元素到数组的另一个指定位置中

               (2)findIndex(function(currentValue,index,arr)方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置,后面两个形参可以不用写

             (3)indexOf(item,  start)方法可返回某个指定的字符串值在字符串中首次出现的位置 

               ( 4 ) lastIndexOf(item,start)方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索 

<script type="text/javascript">
        var  arr = [2,3,1,3,5,6,2];
        var arr1 = arr.copyWithin(3,0,2);//2 3 1 2 3  6 2
        function num(num){
            return num > 3;
        }
        var arr2 = arr.findIndex(num);
        console.log(arr2);//5
        var arr3 = arr.indexOf(3);
        console.log(arr3);//   1
        var arr4 = arr.lastIndexOf(2);
        console.log(arr4);// 6

    </script>

    

       3.3 Strin对象-----匹配相关(与正则表达式配合使用)

              (1)str.match(RegExp):匹配指定字符串 

        var str = "2018上海上班2019杭州上班";
        var res = str.match(/上班/g);
        console.log(res);

            (2)str.replace(RegExp):替换指定字符

        var str = "2018上海上班2019杭州上班";
        var res = str.replace(/上班/g,"挣钱");
        console.log(res);

 

           (3)str.search(RegExp):查找字符。返回与指定查找的字符串或者正则表达式相匹配的 String 对象起始位置。

        var str = "2018上海上班2019杭州上班";
        var res = str.search(/上班/g);
        console.log(res);//  6

      3.4  String---操作字符相关

            (1)str1.concat(str2,...,strn) :连接字符串

    (2)str.slice(start,end):传入两个索引值,截取两个值之间的字符串,不包括end值。返回新字符串。若start为负数,从最后一位开始数起。

        var str = "I'm a programmer";
        var str2 = "Heloo Wrold";
        console.log(str+str2);
        console.log(str.slice(0,4));
        console.log(str.slice(-4,-2));

     3.5  数组-----操作符相关

         (1)arr.concat(str2,...,strn) :连接数组

var hege = ["Cecilie", "Lone"];
var stale = ["Emil", "Tobias", "Linus"];
var kai = ["Robin"];
var children = hege.concat(stale,kai);

 

         (2)arr.slice(start,end):传入两个索引值,截取两个值之间的字符串,不包括end值。返回新数组。若start为负数,从最后一位开始数起。

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
        var citrus = fruits.slice(1,3);
        console.log(citrus);

 

          (3)splice(index, howmant ,item) 方法用于插入、删除或替换数组的元素

        var fruits = ["Banana", "Orange", "Apple", "Mango"];
       fruits.splice(2,0,"Lemon","Kiwi");
        console.log(fruits);

4.总结

String对象和数组有些相同之处还有不同之处,有的用法差不多,这里呢小编只列举了常用的方法,有些不常用的就没有列举,其实我们在学习者两个内容时可以相互结合一下,这样可以很快记住那些方法,好啦!就总结这么多,有心的你可以做的比我更好,想法是可以共享的,若你有不同的见解,可以微信我,我们一起进步!见下面我的微信号:

 

猜你喜欢

转载自blog.csdn.net/m0_37058714/article/details/81165972