JS基础学习Day3——数组

目录

1.求数组[1,65,82,64,59]中的最大值

2.向数组[1,65,82,64,59]中添加元素

3.案例:新建一个数组依次添加数字1-10

4.将一组数组中满足条件的元素放入新的数组

5.翻转数组:将数组[1,65,82,64,59]的元素按从右至左顺序重新排列

6案例:冒泡排序的实现:将数组[1,65,82,64,59]按从大到小的顺序排列


1.求数组[1,65,82,64,59]中的最大值

观察这个实例可以发现,我们定义数组可以通过直接给数组赋值的方式实现,像这种赋值方式,for循环里的条件可以直接写 i<5;但要注意数组元素下标和长度的区别,下标就是数组中各个元素的名字,从0开始(所有数组都是)依次增加,长度指数组内的元素数量,有一个是一个。

2.向数组[1,65,82,64,59]中添加元素

由上述实例可以看到js中数组的内容是可以灵活更改的,主要方式由修改长度和内容两种。

3.案例:新建一个数组依次添加数字1-10

注意此实例中新建数组的方式,这种方法叫做字面量定义。所谓字面量即见字如面,我看到[ ],我就知道这是数组,看到‘ ’就知道是字符串。这种方法相较赋值定义的好处在于更加灵活。

4.将一组数组中满足条件的元素放入新的数组

5.翻转数组:将数组[1,65,82,64,59]的元素按从右至左顺序重新排列

6案例:冒泡排序的实现:将数组[1,65,82,64,59]按从大到小的顺序排列

理解冒泡排序的原理十分重要!!!

上述所有实例源码:

// 1.求数组[1,65,82,64,59]中的最大值
    var arr = [1, 65, 82, 64, 59];//赋值定义数组 
    var max;
    for (var i = 0; i < arr.length; i++) {
      if (arr[i + 1] > arr[i]) {
        max = arr[i + 1];
      }
    }
    console.log(max);

    //2.向数组[1,65,82,64,59]中添加元素
    var arr = [1, 65, 82, 64, 59];
    console.log(arr);
    arr.length = 6;//修改数组长度添加元素
    console.log(arr);
    arr[6] = '流星';//直接给赋值添加元素
    arr[8] = '划过';
    console.log(arr);

    //3.案例:新建一个数组依次添加数字1-10
    var arr = [];
    for (var i = 0; i < 10; i++) {
      arr[i] = arr.length + 1;//注意数组下标和元素之间的联系
    }
    console.log(arr);

    // 4.将一组数组中满足条件的元素放入新的数组:
    // 将数组[1,65,82,64,59]中能被2整除的数放入新的数组
    var arr = [1, 65, 82, 64, 59];
    var result = [];
    for (var i = 0; i < arr.length; i++) {
      if (arr[i] % 2 == 0) {
        result += arr[i];//注意别漏了“+”,否则只能记录最后一个满足条件的数
      }
    }
    console.log(result);

    // 5.翻转数组:将数组[1,65,82,64,59]的元素按从右至左顺序重新排列
    var arr = [1, 65, 82, 64, 59];
    var reverse = [];
    for (var i = arr.length - 1; i >= 0; i--) {
      reverse += arr[i];
    }
    console.log(reverse);

    // 6.冒泡排序的实现:将数组[1,65,82,64,59]按从大到小的顺序排列
    var arr = [1, 65, 82, 64, 59];
    for (var i = 0; i < arr.length - 1; i++) {
      //i 指主动比较的元素轮数,第一轮是以arr[0]为基准比较,后面依次以arr[i]为比较基准
      for (var j = 0; j < arr.length - 1; j++) {
        //j arr[i]元素比较的过程,arr[j]即两个数的比较:
        //开始是arr[0]和arr[1]的元素值比较,比较完后是arr[0]与arr[2]比较,依次后推
        if (arr[j] < arr[j + 1]) {
          var temp = arr[j];
          arr[j] = arr[j + 1];
          arr[j + 1] = temp;
        }
      }
    }
    console.log(arr);

本篇文章中所有知识点参考自B站黑马程序员视频:

17-冒泡排序_哔哩哔哩_bilibili

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值