数组的方法

数组的添加和删除

push

  • 语法 arr.push(items)
  • 作用:在数组的末尾添加一个或者多个元素 返回当前数组的长度

pop 

  • 语法:arr.pop()
  • 作用:在数组的末尾删除一个元素 返回被删除的元素

unshift 

  • 语法:arr.unshift(items)
  • 作用:在数组的头部添加一个或者多个元素 返回当前数组的长度

shift 

  • 语法:arr.shift()
  • 作用:在数组的头部删除一个元素 返回被删除的元素
 // 1.push
     var arr = [1,true,false,"空字符串"];
        var len =  arr.push("快吃饭了");
        console.log(arr);//[1, true, false, '空字符串', '快吃饭了']
        console.log(len);//5
        // push多个数据之间用逗号隔开 可以追加任意数据类型
        arr.push("1","2",["哈哈","嘿嘿"])
        console.log(arr);//[1, true, false, '空字符串', '快吃饭了', '1', '2', Array(2)]

        // 2.pop
        var arr = [1,true,false,"空字符串"];
        var a =  arr.pop();
        console.log(arr);//[1,true,false]
        console.log(a);// "空字符串"

        // 3.unshift
        var arr = [1,true,false,"空字符串"]
        var len = arr.unshift(0);
        console.log(arr);//[0,1,true,false,"空字符串"]
        console.log(len);//5
        arr.unshift(undefined,null,{});
        console.log(arr);// [undefined,null,{},0,1,true,false,"空字符串"]

        // 4.shift
        var arr = [1,true,false,"空字符串"];
        var a =  arr.shift();
        console.log(arr);//[true,fasle,"空字符串"]
        console.log(a);//1

数组的其他方法

splice

  • 语法 arr.splice(sart,deleteCount,items)
  • 作用 删除数组中一串连续的数组元素 被删除的元素会组成一个新的数组返回 使用items替换前面被删除的数组元素
  • 参数
    • start 必需 开始删除的下标位置
    • deleteCount 可选值 删除的个数 默认是删除到末尾
    • items 可选值 替换的内容
// 1.splice 
        // a.start参数
        var arr  = [1,true,false,null,"字符串"];
        var a =  arr.splice(3);
        console.log(arr);//[1,true,false];
        console.log(a);// [null "字符串"];
        // b:start参数 deleteCount参数 删除
        var arr  = [1,true,false,null,"字符串"];
        var a =  arr.splice(3,1);
        console.log(arr);// [1,true,false,"字符串"];
        console.log(a); // [null]

        // c.start参数  deleteCound参数   items替换的内容 替换
        var arr  = [1,true,false,null,"字符串"];
        arr.splice(2,2,"这是替换的内容",1);
        console.log(arr);//[1,true,"这是替换的内容",1,"字符串"]


        // d.添加功能
        var arr = [1,3,4];
        arr.splice(1,0,2);//从下标为1的位置开始删除 删除0个(相当于没有删除) 然后将数字2添加到该下标前面
        console.log(arr);//[1,2,3,4]

 indexof

  • 语法:arr.indexof(searchValue,index)
  • 作用:查找元素在数组中首次出现的位置 出现返回对应的下标 找不到返回-1
var  arr = [1,2,3,4,5,6,1,2];
        var index =  arr.indexOf(1,2);
        console.log(index);// 6

 join

  • str.split(分割标识) 将字符串根据分割标识分割成一个数组 字符串---数组
  • arr.join(组合标识) 将数组按照组合标识组成字符串 数组--字符串
    • 语法 arr.join(组合标识)
    • 作用 将数组按照组合标识组成字符串
     // 3.join
        var arr = [1,2,3,4,5];  //
        var a  =  arr.join("-");
        console.log(a);//  "1-2-3-4-5-6"
        console.log(arr.join(""));//12345
        console.log(arr.join(","));//1,2,3,4,5
        console.log(arr.join(" "));//1 2 3 4 5

reverse 

  • 语法 arr.reverse()
  • 作用 反转数组 将反转结果作为返回值返回
 // 4.reverse
        var arr = [1,true,false,null,"字符串"];;
        var a =   arr.reverse();
        console.log(a);// ['字符串', null, false, true, 1]
        console.log(arr);

 concat

  • 语法:arr.concat(items)
  • 作用 将多个元素 数组组合成一个新的数组返回
 // 5.concat  不会改变原数组
        var arr = [1,2,3];
        var a  =  arr.concat("4","5",["呵呵","哈哈"])
        console.log(a);//[1, 2, 3, '4', '5', '呵呵', '哈哈']
        console.log(arr); // [1,2,3]

 slice

  • 语法 arr.slice(start,end)
  • 作用:截取数组中一串连续的元素组成一个新数组返回
// 6.slice  不会改变原数组
        var arr = ['字符串', null, false, true, 1];
        var a = arr.slice(0,2);
        console.log(a);//["字符串","null"];
        console.log(arr);//['字符串', null, false, true, 1]

 

 数组排序

冒泡排序

  • 冒泡排序的思路 两个相邻位置的数据进行比较
<script>
        var arr = [6, 4, 9, 2, 7, 1];
        for (var i = 0; i < 5; i++) {
            // i=0  内层0-5 
            // i=1  内层0-4   
            // i=2  内层0-3   
            // i=3  内层0-2   
            // i=4  内层0-1
            for (var j = 0; j < arr.length- 1 - i; j++) {
                if (arr[j] > arr[j + 1]) {
                    // 交换位置
                    var temp = arr[j];
                    arr[j] = arr[j + 1]
                    arr[j + 1] = temp;
                }
            }
        }
        console.log(arr);

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值