• JavaScript内置对象之数组


    一、JavaScript对象之数组

      1、创建数组的方式

        (1)使用Array构造函数

           语法:new Array()

          小括号()说明:

            -预先知道数组要保存的项目数量

            -向Array构造函数中传递数组应包含的项

        (2)使用数组字面量表示法

           -由一对包含数组项的方括号[]表示,多个数组之间以逗号隔开

        2、数组元素的读写

          -读取和设置值时,使用方括号[]并提供相应的索引

           说明:索引是从0开始的正整数

        3、数组的长度

          语法:array.length

          功能:获取数组array的长度

          返回值:number

          说明:

            -通过设置length可以从数组的末尾移除或向数组中添加新项。

            -把一个值放在超出当前数组大小的位置上时,会重新计算数组长度值,长度值等于最后一项索引加1。

        4、数组方法的栈方法

          push()   unshift()   pop()  shift()

         (1)push()

           -语法:

             arrayObject.push(newele1,newele2……newelen);

           -功能:

             把它的参数顺序添加到arrayObject的尾部。

           -返回值:

             把指定的值添加到数组后的新长度。

           -例: 

     <script>
            var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
            arr.push("sass");
            console.log(arr);
     </script>
    

         (2)unshift()

           -语法:

             arrayObject.unshift(newele1,newele2……newelen);

           -功能:

             把它的参数顺序添加到arrayObject的开头。

           -返回值:

             把指定的值添加到数组后的新长度。

           -例:      

     <script>
            var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
            arr.unshift("sass");
            console.log(arr);
     </script>
    

         (3)pop()

           -语法:

             arrayObject.pop();

           -功能:

             删除数组最后一个元素。

           -返回值:

             被删除的那个元素。

           -例:

     <script>
            var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
            var n= arr.pop();
            console.log(n);
      </script>
    

         (4)shift()

           -语法:

             arrayObject.shift();

           -功能:

             删除数组第一个元素。

           -返回值:

             被删除的那个元素。

           -例:

    <script>
            var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
            var r=arr.shift();
            console.log(r);
    </script>
    

         5、join() 、reverse()、sort()方法

            -join():把数组转换成字符串

            -reverse():把数组元素顺序反转

            -sort() :对数组元素排序

          (1)join()

             -语法:

               arrayObject.join(separator);

             -功能:

                把数组所有元素放入一个字符串。

               -返回值:

                字符串。

               -例:

    <script>
            var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
            var r=arr.join("-"); //括号内为空的话,默认是,(逗号)连接;
            console.log(r);
            document.write(r);
     </script>
    

         (2)reverse()

            -语法:

             arrayObject.reverse();

           -功能:

             用于颠倒数组中的元素顺序。(反转)

           -返回值:

             数组。

           -例:   

    <script>
            var arr=["a" ,"b", "c" , "d","e" ];
            var r=arr.reverse();
            console.log(r);
     </script>
    

           (3)sort()

           -语法:

               arrayObject.sort(sortby);

             -功能:

                把数组内元素进行排序。

               -返回值:

                数组。

               -说明:

              -即使数组中的每一项都是数值,sort()方法比较的也是字符串。

              -sort()方法可以接收一个比较函数作为参数。

             -例:

              

    <script>
            var arr=[10,11,1,2,5,88,9,-1 ];
            var r=arr.sort(function (a,b) {
               return a>b;
            });
            console.log(r);
     </script>
    

          

          (4)例子:让我们来封装一个函数,实现不用reverse()方法也能实现数组反转的功能,比如:数组1,2,3,4,5,通过该函数反转后,输出的是:5,4,3,2,1。

    <script>
            function arrReverse(arr){
                var newArr=[];
                for(var i=0;i<arr.length;i++){
                  return  newArr= arr.sort(function (a,b) {
                      return a<b;
                  });
                }
            }
            document.write(arrReverse([1,2,3,4,5,6,7,8]));
     </script>
    

         

        6、数组方法(concat和slice)

            -concat()

            -slice()

          (1)concat()

            -语法:

               arrayObject.concat(arrayX,arrayX……arrayX);

             -功能:

                  连接两个或多个数组

               -返回值:

                  数组。

             -例:

    <script>
            var arr1=["a","b","c","d",1],
                arr2=["e","f",1,2],
                arr3;
            arr3=arr1.concat(arr2); //arr2后面还可以加数组。
            console.log(arr3);
     </script>
    

           (2)slice()

             -语法:

               arrayObject.slice(start,end);

             -功能:

                  从已有的数组中返回选定的元素

               -参数:

                start(必需)规定从何处开始选取,如是负数,从数组尾部开始算起

                end(可选)规定从何处结束选取,是数组片断结束处的数组下标

             -说明:

                -如没指定end,切分的数组包含从start到数组结束懂得所有元素。

                -如slice()方法的参数中有一个负数,则用数组长度加上该数来确定相应的位置

            -返回值:

                数组。

            -例;

    <script>
            var arr1=[1,2,3,4,5,6,7,8,9],
                arr3;
            arr3=arr1.slice(-6,8);
            console.log(arr3);
    </script>
    

         7、数组方法(splice)

         (1)删除

           -语法:

               arrayObject.splice(index,count);

             -功能:

                 删除从index处开始的零个或多个元素。

                -返回值:

                含有被删除的元素的数组。

               -说明:

               -count是要删除的数量.如果设置为0,则不会删除。如果不设置,则从index处开始删除所有值。          

               -例:    

     <script>
            var arr1=["a","b","c","d",1],
                arr3;
            arr3=arr1.splice(1,2);
            console.log(arr3);
     </script>
    

         (2)插入

           -语法:

               arrayObject.splice(index,0,item1……itemx);

             -功能:

                 在指定位置插入值

                -返回值:

                数组

               -参数:

               index:起始位置

               0:要删除的项数   

               item1……itemx :要插入的项    

               -例:         

     <script>
            var arr1=["a","b","c","d","e"];
            arr1.splice(2,0,"m","n");
            console.log(arr1);
     </script>
    

          (3)替换

           -语法:

               arrayObject.splice(index,count,item1……itemx);

             -功能:

                 在指定位置插入值,且同时删除任意数量的项。

                -返回值:

                从原始数组中删除的项(如果没有删除的项,则返回空数组)

               -参数:

               index:起始位置

               count:要删除的项数   

               item1……itemx :要插入的项    

               -例:

    <script>
            var arr1=["a","b","c","d","e"];
            arr1.splice(2,2,"m","n","j");
            console.log(arr1);
     </script>
    

          8、数组方法(indexOf和lastIndexOf)

          (1)indexOf

             -语法:

               arrayObject.indexOf(searchvalue,startIndex);

             -功能:

                 从数组的开头(位置0)开始向后查找

                -返回值:

                number。查找的项在数组里面的位置,没有找到的情况下返回-1;

               -参数:

               searchvalue:必需,要查找的项;

               startIndex:可选,起点位置的索引。      

               -例:

    <script>
            var arr1=[1,2,3,4,5,6,7];
           var pos=arr1.indexOf(3);
            console.log(pos);
     </script>
    

           (2)lastIndexOf

             -语法:

               arrayObject.lastIndexOf(searchvalue,startIndex);

             -功能:

                 从数组的末尾开始向后查找

                -返回值:

                number。查找的项在数组里面的位置,没有找到的情况下返回-1;

               -参数:

               searchvalue:必需,要查找的项;

               startIndex:可选,起点位置的索引。      

               -例:

     <script>
            var arr1=[1,2,3,4,5,6,7];
           var pos=arr1.lastIndexOf(5);
            console.log(pos);
     </script>
    
  • 相关阅读:
    对fork函数的疑惑,求解!
    C语言获取集合幂集
    C#编写socket客户端,服务器断开连接时客户端报异常
    转载:Linux下的 .o、.a、.so文件
    浅析23种软件设计模式
    Linux之设备文件
    printf输出格式
    光放大器的工作波长
    QSYS组件信号命名方式
    摩尔定律
  • 原文地址:https://www.cnblogs.com/xianyujn/p/6235005.html
Copyright © 2020-2023  润新知