javascript数组大全

JavaScript数组大全

1、数组转换方式( join()、valueOf()、toString()、toLocaleString())
  • join() 可以将数组转换成字符串,并以逗号隔开–》使用join方法若是数组中含有:空、null、undefined则会打印出空数组出来

     var lists = [1, null, 3, undefined, 5, , 3, , 1]
        console.log(lists.join());
        // 当数组中含有null,undefined,或者空字符串的时候,在使用join方法转换成字符串的时候会直接输出空对象
    

    在这里插入图片描述

  • valueOf() 返回数组对象的原始值。

        var lists = [1, null, 3, undefined, 5, , 3, , 1]
        console.log(lists.valueOf());
        //使用valueOf会-->null返回null,undefined返回undefined,空的地方返回empty
    
    

    在这里插入图片描述

  • toString() 把数组转换为字符串,并返回结果,以逗号隔开。和join方法差不多,区别在于join可以自定义分隔符,而toString不行,只能用逗号

        var lists = [1, null, 3, undefined, 5, , 3, , 1]
        console.log(lists.toString());
    
    

    在这里插入图片描述

  • toLocaleString()把数组转换为字符串,并返回结果。这个呢又和上面几个差不多,但是区别在于每三位会自定义用逗号隔开,时间上也会有所不同

    var lists = 1234567
    var date = new Date()
    console.log(lists.toString());
    console.log(lists.toLocaleString());
    console.log(date.toString());
    console.log(date.toLocaleString());

在这里插入图片描述

栈和队列的方法(push()、pop()、shift()、unshift)
  • push()向数组的末尾添加一个或多个元素(会修改原数组的长度)

       var list = [1, 2, 3]
        list.push(4)
        console.log(list);
    

    在这里插入图片描述

  • pop()删除数组的最后的一个元素(会修改原数组的长度)

    var list = [1, 2, 3]
        list.pop()
        console.log(list);
    

    在这里插入图片描述

  • shift() 删除数组的第一个元素并返回删除的元素。(会修改原数组的长度)

    var list = [1, 2, 3]
        list.shift()
        console.log(list);
    

    在这里插入图片描述

  • unshift()向数组的开头添加一个或更多元素。(会修改原数组的长度)

    var list = [1, 2, 3]
    list.unshift(4)
    console.log(list);

1553589679068

重新排序数组的方法(sort()、reverse())
  • sort()对数组的元素进行排序,默认是按升序排列,可通过比较函数做参数决定排序规则。同样原数组被修改后返回

      var list = [6, 5, 4, 3, 2, 1]
        list.sort()
        console.log(list);
    

    在这里插入图片描述

  • reverse()反转数组的元素顺序。

    var list = [1, 2, 3, 4, 5, 6]
    list.reverse()
    console.log(list);

在这里插入图片描述

操作方法(concat()、slice()、splice())
  • concat()连接两个或更多的数组,并返回结果。concat()方法不会修改原数组,而是先创建当前数组的副本,在副本上进行连接,而原数组在操作前后并不会发生变化

      var history1 = ["赵高", "嫪毐", "吕不韦"];
        var history2 = history1.concat("秦皇", ["胡亥", "扶苏"]);
        console.log(history1);
        console.log(history2);
    

    在这里插入图片描述

  • slice()选取数组的的一部分,并返回一个新数组。slice()方法不会修改原数组,而是基于原数组中的项创建新数组返回

	var list = [6, 5, 4, 3, 2, 1]
    var list2 = list.slice(2, 4)//从第二个开始索引,到第四个结束list2=[4,3]
    console.log(list2);

在这里插入图片描述

  • splice()实现数组项的删除、插入、替换。原数组会按照相应操作改变,如果没有删除任何项,则返回一个空数组
   var list = [6, 5, 4, 3, 2, 1]
    list.splice(3, 2)
    console.log(list);

在这里插入图片描述

位置方法(indexOf()、lastindexOf())
  • indexOf()搜索数组中的元素,并返回它所在的索引位置

     var list = [6, 5, 4, 3, 2, 1]
        console.log(list.indexOf(2));//从前开始数第几个为3,返回它的index
    

    在这里插入图片描述

  • lastindexOf()返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。但是index值不变,也就是说返回的值和indexof一样

 var list = [6, 5, 4, 3, 2, 1]
    console.log(list.lastIndexOf(2));//从后开始数第几个为3,返回它的index

1553592292854

迭代方法(every()、some()、filter()、forEach()、map())
  • every()检测数值元素的每个元素是否都符合条件。如果该函数对每一项都返回true,才返回true。

      var checknum = [15, 3, 2, 6, 7, 1, 9, 10];
        var checkresult = checknum.every(function (item, index, array) {
          return item >= 1;
        });
        console.log(checkresult);
    

    在这里插入图片描述

  • some()检测数组元素中是否有元素符合指定条件。如果该函数有一项返回true,则返回true。

    var checknum = [15, 3, 2, 6, 7, 1, 9, 10];
        var checkresult = checknum.some(function (item, index, array) {
          return item >= 10;
        });
        console.log(checkresult);
    

    在这里插入图片描述

  • filter()检测数值元素,并返回符合条件所有元素的数组。

    var arr = ['1', '2', undefined, '3.jpg', undefined]
            var newArr = arr.filter(item => item)
            console.log(newArr)
    
            var arr = ['1', '2', null, '3.jpg', null]
            var newArr = arr.filter(item => item)
            console.log(newArr)
    
                //空字符串里面不能包含空格
            var arr = ['1', '2', '', '3.jpg', '']
            var newArr = arr.filter(item => item)
            console.log(newArr)
    

    在这里插入图片描述

  • forEach()对数组中的每一项运行给定函数

        		var arr = [0, 2, 4, 6, 8];
                var sum = 0;
                var str = arr.forEach(function (item, index, arr) {
                    sum += item;
                    console.log("sum的值为:", sum); //0 2 6 12 20 
                })  
    

    在这里插入图片描述

  • map()通过指定函数处理数组的每个元素,并返回处理后的数组。

      			 var arr = [0, 2, 4, 6, 8];
                 var str = arr.map(function (item, index, arr) {
                    console.log(this);
                    console.log("原数组arr:", arr); //注意这里执行5次
                    return item / 2;
                }, this);
                console.log(str);
    

    在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值