数组的创建及其常见的方法

数组的创建及其常见的方法数组——复杂类型数据,用Array表示数组的创建(两种方法):第一种方法:构造函数的方法定义例如:vararr=newArray()//定义了一个空数组vararr=newArray(5)//定义了一个数组,有五个变量,但是还没有进行赋值vararr=ne

大家好,欢迎来到IT知识分享网。数组的创建及其常见的方法"

数组——复杂类型数据,用 Array 表示

数组的创建(两种方法):

第一种方法:构造函数的方法定义

  例如:var arr = new Array()  // 定义了一个空数组

          var arr = new Array(5)  // 定义了一个数组,有五个变量,但是还没有进行赋值

     var arr = new Array(“a”,”b”,”c”,  …)  //定义了一个数组,里面有 “a”,”b”,”c”,  … 这些变量

第二种方法:字面量的定义

  例如:var arr = [ ]  等价于  var arr = new Array()

             var arr = [“a”,”b”,”c”,  …]  等价于  var arr = new Array(“a”,”b”,”c”,  …)

数组常见的方法(官方函数):

1、push()  功能:在数组的末尾添加一个或多个元素,并返回新数组的长度。

function fn1() {
        var scores = [1,2,3,4,5,6];
        // push();给数组的末尾增加一个元素
        scores.push(8);
        console.log(scores);
        // 结果为[1, 2, 3, 4, 5, 6, 8],length为7
    }
   fn1()

2、pop()  功能:删除数组里最后一个元素,返回值就是被删除的元素。

function fn2() {
        var scores = [1,2,3,4,5,6]
        // pop();删除数组里最后一个元素
        // 返回值是 6
        console.log(scores.pop()) 
        // 结果为[1, 2, 3, 4, 5]
        console.log(scores)
    }
    fn2()

3、unshift()  功能:在数组的开端添加一个或多个元素,并返回新数组的长度。

function fn3() {
        var scores = [1,2,3,4,5,6]
        // unshift();开端添加一个元素
        // 返回值是 7
        console.log(scores.unshift(8)) 
        // 结果为[8, 1, 2, 3, 4, 5]
        console.log(scores)
    }
    fn3()

4、shift()  功能:删除数组里第一个元素,返回值就是被删除的元素。

function fn4() {
        var scores = [1,2,3,4,5,6]
        // pop();删除数组里第一个元素
        // 返回值是 1
        console.log(scores.shift()) 
        // 结果为[2, 3, 4, 5, 6]
        console.log(scores)
    }
    fn4()

5、concat()  功能:可以给数组的末尾增加元素,但是cancat并不会改变原始的数组,concat的返回值是添加元素后的结果,既可以拼接数组,也可以拼接元素。

function fn5() {
        var scores = [1,2,3,4,5,6]
        // 结果为[1, 2, 3, 4, 5, 6, 7, 8]
        console.log(scores.concat(7,8)) 
        // 结果为[1, 2, 3, 4, 5, 6]
        console.log(scores)
    }
    fn5()

6、reverse()  功能:把数组的元素的顺序进行颠倒。

function fn6() {
        var scores = [1,2,3,4,5,6]
        // 结果为[6, 5, 4, 3, 2, 1]
        console.log(scores.reverse()) 
        // 结果为[6, 5, 4, 3, 2, 1]
        console.log(scores)
    }
    fn6()

7、slice()  功能:从数组里取出一部分元素(根据起始下标和结束下标),但不包括结束下标;不会改变原始数组。

function fn7() {
        var scores = [1,2,3,4,5,6]
        // 结果为[3, 4, 5],表示从下标 2 取到下标 5 ,但不包括下标 5 代表的数
        console.log(scores.slice(2,5)) 
        // 结果为[1, 2, 3, 4, 5, 6]
        console.log(scores)
    }
    fn7()

8、join()  功能:把数组中所有元素拼接成一个字符串,元素是通过指定的分隔符进行分割的,默认为逗号;不会改变原始数组。

function fn8() {
        var scores = [1,2,3,4,5,6]
        // 结果为1,2,3,4,5,6
        console.log(scores.join())
        // 结果为1-2-3-4-5-6
        console.log(scores.join('-'))
        // 结果为[1, 2, 3, 4, 5, 6]
        console.log(scores)
    }
    fn8()

9、sort()  功能:只能排序字符串,不能排序数字(默认是按字符编码进行排序)

function fn9(){
        var arr=['t','f','b','a','c'];
        arr.sort();
        // 结果为["a", "b", "c", "f", "t"]
        console.log(arr);
    }
    fn9()

10、splice()  功能:既可以添加元素,也可以删除元素,关键是它可以在在指定下标删除,或者添加。

function fn10(){
        var arr = ['关羽','李逵','刘备','武松','宋江','张飞','卢本伟']
        //在下标2的位置插入了 William
        // 结果为["关羽", "李逵", "William", "刘备", "武松", "宋江", "张飞", "卢本伟"]
        arr.splice(2,0,"William");
        console.log(arr);

        //把下标为3的元素删除掉了(刘备),在下标3的位置插入了 William他姐
        // 结果为["关羽", "李逵", "William", "William他姐", "武松", "宋江", "张飞", "卢本伟"]
        arr.splice(3,1,"William他姐");
        console.log(arr);

        //删除元素:从下标2开始删除2个,插入元素:在下标2的位置插入了 William他弟
        // 结果为["关羽", "李逵", "William他弟", "武松", "宋江", "张飞", "卢本伟"]
        arr.splice(2,2,"William他弟");
        console.log(arr);

        //删除元素:从下标2开始删除3个,插入元素:在下标2的位置插入了 William他妹 和 William他哥
        // 结果为["关羽", "李逵", "William他妹", "William他哥", "宋江", "张飞", "卢本伟"]
        arr.splice(2,2,"William他妹","William他哥",);
        console.log(arr);
    }
    fn10()

补充:数组的length属性

用法:例  var arr = [12,23,34,45]

           console.log(arr.length)  // 结果为 4

下标(索引):console.log(arr[0])  // 结果为 12

       console.log(arr[2])  //结果为 34

下标还可以是变量或者表达式:var i = 0  console.log(arr[i])  // 结果为 12

                     console.log(arr[i+2])  //结果为 34

 

 

感谢您的阅读,欢迎留下宝贵的意见!

 

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/30436.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信