美文网首页从零开始学前端
JS内置对象:数组(一)

JS内置对象:数组(一)

作者: 越IT | 来源:发表于2017-01-29 02:45 被阅读25次

    一、数组创建/读写/长度

    【知识点】

    1、掌握如何创建数组
    2、掌握数组元素的读和写
    3、掌握数组的length属性

    1、如何创建数组?

    两种方式:

    方法一、使用array构造函数

    【语法】:

    new Array()
    

    【案例】:创建一个保存颜色的数组
    方式(1):

    <script>
        var colors=new Array(3);
        console.log(colors);
      </script>
    

    方式(2)

      <script>
        var nums=new Array(1,3,6,9);
        console.log(nums);
      </script>
    
    

    小括号()说明:
    (1)预先知道数组要保存的项目数量
    (2)向Array构造函数中传递数组应包含的项

    方法二、使用数组字面量表示法

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

    <script>
          var cols=[6,"yellow",true,{email:"marry@sohu.com"}];
          console.log(cols);
    </script>
    

    说明:数组中的每一个值对类型没有限制。

    2、数组元素的读写

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

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

    3、数组长度

    【语法】:

    array.length
    

    【功能】:获取数组array的长度
    【返回值】:number

    说明:
    (1).通过设置length可以从数组的末尾移除项或向数组中添加新项。

    【案例】
    说明(1)例子

    <script>
        var arr=["a","b","c","d"];
        //console.log(arr.length);//4
        arr.length=3;
        console.log(arr[3])//为undefined。此方法虽可以删除,但是不建议使用!
    </script>
    

    说明:
    (2).当把一个值放在超出当前数组大小的位置上时,数组就会重新计算其长度值,长度值等于最后一项的索引值加1。

    说明(2)例子

    <script>
        var arr=["a","b","c","d"];
        //console.log(arr.length);//4
        arr[99]="z";
        console.log(arr.length);//100
    </script>
    

    数组的遍历

    
    <script>
        var arr=["a","b","c","d"];
        //数组的遍历
        for(var i=0;i<arr.length;i++){
            console.log(arr[i]);//a b c d
        }
    </script>
    

    二、数组的栈方法

    【知识点】

    1、push()
    2、unshift()
    3、pop()
    4、shift()

    1、push()

    【语法】:

    arrayObject.push(newele1,newele2,....,neweX)
    

    【功能】:
    把它的参数顺序添加到arrayObject的尾部。

    【返回值】:
    把指定的值添加到数组后的新长度。

    2、unshift()

    【语法】:

    arrayObject.unshift(newele1,newele2,....,neweX)
    

    【功能】:
    把它的参数顺序添加到arrayObject的开头。

    【返回值】:
    把指定的值添加到数组后的新长度。

    3、pop()

    【语法】:

    arrayObjective.pop()
    

    【功能】:
    删除arrayObject的最后一个元素。

    【返回值】:
    被删除的那个元素

    4、shift()

    【语法】:

    arrayObject.shift()
    

    【功能】:
    删除arrayObject的第一个元素。

    【返回值】:
    被删除的那个元素

    【案例】push/shift/unshift/pop案例:以下代码运行结果是?

    【答案】:
    [0,2,3,4,5]

    三、数组转换/重排序

    1、掌握数组的转换方法
    2、掌握数组的重排序方法

    join()

    【语法】:

    arrayObject.join(separator)
    

    【功能】:
    用于把数组中的所有元素放入一个字符串。

    【返回值】:字符串。

    【案例】:

    <script>
        //join
        var nums=[2,4,5];
        var str=nums.join();//2,4,5类型为string,默认是,隔开
    
        var words=["border","left","color"];
        var wordstr =words.join("-");
        console.log(wordstr);   //border-left-color
      </script>
    

    reverse()

    【语法】:

    stringObject.reverse()
    

    【功能】:
    用于颠倒数组中元素的顺序。

    【返回值】:数组

    【案例】:

    <script>
    //reverse
        var nums=[2,4,5];
        nums.reverse();
        //reverse反转数组,得到的是数组
        console.log(nums);//[5,4,2]
    
        var strs=["a","b","c","d"];
        //返回dcba这个字符串
        var newstr=strs.reverse().join("")
        console.log(newstr);
    </script>
    

    sort()

    【语法】:

    arrayObject.sort(sortby)
    

    【功能】:
    用于对数组的元素进行排序。

    【返回值】:数组。

    【案例】:

    <script>
          //sort
          var arr=[9,23,15,88,12];
         //降序排列 return 参数1<参数2
          arr.sort(function(a,b){return a<b});
          console.log(arr);//[88,23,15,12,9]
          //升序 return 参数1>参数2
          arr.sort(function(a,b){return a>b});
          console.log(arr);//[9,12,15,23,88]
      </script> 
    

    说明:
    1.即使数组中的每一项都是数组,sort()方法比较的也是字符串。
    2.sort()方法可以接收一个比较函数作为参数。

    【综合案例】:下列代码运行结果是?

    【答案】:
    1;2;3;4;5;6,string,[1,2,3,4,5,6]

    相关文章

      网友评论

        本文标题:JS内置对象:数组(一)

        本文链接:https://www.haomeiwen.com/subject/zrtcittx.html