JavaScript学习历程:Array


Array的概念

Array是对象的一种子类型,属于引用数据类型。同时array是一种有序列表,且列表内的元素可以是任意数据类型,这是和其他语言中的数组大相径庭的地方其格式为[元素1,元素2,元素3,元素4]


一、Array的声明

1.字面量形式声明:

var arr = [1,2,3];

构造了一个长度为3,内容为1,2,3的数组

2.构造函数声明

情况一

var arr = new Array(10);

构造了一个长度为10的空数组

情况二

var arr = new Array(10,1,2,3);

构造了一个长度为4,内容为10,1,2,3的数组

情况三

var arr = new Array("10");

构造了一个长度为1,内容为“10”的数组

由此可见当使用构造函数声明数组时,当传入参数只有一个且为number类型时,会将其作为生成数组的长度

二、访问参数&常用方法

1.访问参数:

数组的参数由下标调用,下标从0开始

console.log(arr[0]);

在控制台输出arr数组的第一个元素

2.方法

1、栈方法

        push()
        	在一个数组的末尾添加任意数量的任意元素,返回新数组的长度
        pop()
        	删除数组的最后一个元素,并将其作为返回值

2、队列方法

        shift()
        	删除数组的第一个元素,并将其返回
        unshift()
        	在数组的前端添加任意数量的任意元素,并返回新数组的长度

3、操作方法

        concat()
        	连接多个数组,最后返回的结果存放在第一个作为参数的数组的内存地址中
        slice(a,b);
        	从a位置开始到b位置结束建立新数组(不包含b位置)
            第二个参数为-1时,那就表示到最后一个元素的位置
        splice(a,b,c);
        	从a位置开始的b个元素被替换为c

4、重排序方法

        reverse()
        	数组顺序反转
        sort()
        	数组元素按照ASCII码的值来排序

5、位置方法

        indexof(a,index)
        	从开头寻找与a===的字符,找到第一个后返回其下标,如果查找不到则返回-1
        lastindexof()
        	与indexof一样,只不过从末尾开始寻找

6、迭代方法

        每一种迭代方法的参数有两个:都是function其中含有三个参数(item,index,array),和this
        every():对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true。
        filter():对数组中的每一项运行给定函数,返回该函数会返回true 的项组成的新数组。
        forEach():对数组中的每一项运行给定函数。这个方法没有返回值。
        map():对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
        some():对数组中的每一项运行给定函数,如果该函数对任一项返回true,则返回true。

7、归并方法

    每一个归并方法都接受这样一个方法作为参数:function(prev(前一项的值), cur(当前项的值), index(下标), array(数组)),以及一个任意类型的参数{}其返回值作为下一项的prev
    
    reduce(function(prev,cur,index,array){
        console.log(prev,cur);//第一次的prev为数组的第一个元素,第二次的cur为数组的第二个元素,第二次以后的prev为undefined
    })
    reduce(function(prev,cur,index,array){
        console.log(prev,cur);//第一次的prev为reduce的第二个参数,第一次的cur为数组的第一个元素,第二次以后的prev为上一次的返回值
    },任意参数)
    reduceRight()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值