03-JavaScript数组

目录

1.通过直接量创建数组

2.通过构造函数来创建数组

3.访问数组元素

4.获得数组长度

5.遍历数组

6.二维数组

7.求数组的最大值

8.求数组的最小值

9.冒泡排序

10.数组的操作方法

11.清空数组

1.通过直接量创建数组

var arr = [1, 2, 3, 'abc', 'true'];
        console.log(arr);

2.通过构造函数来创建数组

        var arr2 = new Array("张三", "李四");
        console.log(arr2);
        var arr3 = new Array(5); //数组长度
        console.log(arr3);
        var arr4 = new Array(1, 2, 3, "哇哦", 5);
        console.log(arr4);

3.访问数组元素

        console.log(arr);
        console.log(arr[3]);
        arr[3] = 'ABC';
        console.log(arr);
        delete arr[3]; //会留一个empty空间
        console.log(arr);

4.获得数组长度

        console.log(arr.length);
        arr.length = 3; //长度减小
        console.log(arr);
        arr.length = 10; //长度扩大
        console.log(arr);

5.遍历数组

        var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
        for (i = 0; i < arr.length; i++) {
            console.log(arr[i]);
        }

6.二维数组

        var arr = [1, 2, 3, [4, 5], 6, [7, 8, 9]];
        console.log(arr);

7.求数组的最大值

        var arr = [5, 11, 6, 88, 55, 21]
            var max = arr[0];
            var xia = 0;
            for (i = 1; i < arr.length; i++) {
                if (max < arr[i]) {
                    max = arr[i];
                    xia = i;
                }
            }
            console.log(max);
            console.log(xia);

8.求数组的最小值

        var min = arr[0];
        for (i = 0; i < arr.length; i++) {
            if (min > arr[i]) {
                min = arr[i];
                xia = i;
            }
        }
        console.log(min);
        console.log(xia);

9.冒泡排序

        var temp;
        // for (j = 0; j < arr.length; j++) {
        //     for (var i = 0; i < arr.length; i++) {
        //         if (arr[i] > arr[i + 1]) {
        //             temp = arr[i];
        //             arr[i] = arr[i + 1];
        //             arr[i + 1] = temp;
        //         }
        //     }
        // }

        //改进
        //控制比较几趟
        for (j = 0; j < arr.length - 1; j++) {
            //控制每次比较的元素个数
            for (var i = 0; i < arr.length - j - 1; i++) {
                if (arr[i] > arr[i + 1]) {
                    // temp = arr[i];
                    // arr[i] = arr[i + 1];
                    // arr[i + 1] = temp;

                    //解构赋值
                    [arr[i], arr[i + 1]] = [arr[i + 1], arr[i]]
                }
            }
        }
        console.log(arr);

10.数组的操作方法

        //1.操作方法需要传递哪些参数
        //2.操作方法的返回值是什么
        //3.是否改变原来数组

        var arr = [5, 2, 8, 22, 94, 1];
        console.log(arr);

        //1.push() 将一个或多个元素添加到数组末尾:栈方法
        // arr.push(3, 2, 50);           //传递的参数为要添加的元素
        console.log(arr.push(3, 2, 50)); //返回值数组长度
        console.log(arr); //改变原数组

        //2.pop() 从数组末尾删除一个元素:栈方法
        // arr.pop();               //没有参数
        console.log(arr.pop()); //返回被删除的元素
        console.log(arr); //改变原数组

        //3.unshift() 将一个或多个元素添加到数组的开头:队列方法
        // arr.unshift(7, 100);           //传递的参数为要添加的元素   
        console.log(arr.unshift(7, 100));//返回值数组长度
        console.log(arr); //改变原数组

        //4.shift() 从数组的开头删除一个元素:队列方法
        // arr.shift();              //没有参数  
        console.log(arr.shift());//返回被删除的元素
        console.log(arr);//改变原数组

        //5.includes() 数组中是否含有某个元素
        console.log(arr.includes(100)); //传递的参数为查找的元素;返回值true、false
        console.log(arr); //不改变

        //6.indexOf()
        console.log(arr.indexOf(4)); //传递的参数为要查找的元素;返回值查找元素第一次出现位置的索引下标,查找失败返回-1
        console.log(arr); //不改变
        //console.log(arr.indexOf(4, [0])); []可选参数

        //7.join()  将数组的所有元素连接到一个字符串中
        console.log(arr.join("-")); //参数为字符;返回值是拼接字符串;不改变原数组
        console.log(arr);

        // 8. toString()
        console.log(arr.toString()); //无参数;返回值是拼接字符串;不改变原数组
        console.log(arr);

        //9.Array.isArray()
        console.log(Array.isArray(arr)); //参数为字符;返回值是true、false;不改变原数组
        console.log(arr);

        //10.splice()  数组的增删改
        // arr.splice(insex, 要删除的元素的个数, 要增加的元素);
        console.log(arr);
        //删除元素
        console.log(arr.splice(3, 2)); //返回值是个数组,被删除元素组成的数组
        console.log(arr);
        //添加元素
        arr.splice(3, 0, 11, 12, 13); //返回空数组
        console.log(arr);
        //修改元素
        arr.splice(3, 3, 4, 5, 6);
        console.log(arr);

        // 11.slice() 复制原数组的部分内容
        console.log(arr.slice(2, 6)); //参数为:开始和结束的索引(包含开始不包含结束);返回值复制的数组
        //克隆数组
        console.log(arr.slice(0));

        // 12.reverse() 颠倒数组
        arr.reverse();
        console.log(arr);

        //13.concat() 连接两个或多个数组的
        console.log(arr.concat([101, 102, 103], [201, 202, 203], [301, 302, 303])); //参数为需要拼接的数组;返回值拼接后的新数组;不改变原数组
        console.log(arr);

11.清空数组

        var arr = [5, 2, 8, 22, 94, 1];
        console.log(arr);
        arr = [] //原数组不改变
            // arr.length = 0 //原数组改变了
        console.log(arr);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值