js数组 根据pink老师讲的所整理的笔记

发布于:2022-08-08 ⋅ 阅读:(240) ⋅ 点赞:(0)

数组

数组的概念

一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素。数组(Array)是一种将一组数据存储在单个变量名下的优雅方式。

创建数组

①利用new关键字创建数组

	var 数组名 = new Array([n]);//[]代表可选 若写n,则代表数组的长度
    var arr = new Array();//创建了一个名为 arr 的空数组
  • 这种方式等学完对象再看

②利用数组字面量创建数组(较常用)

	// 1. 使用数组字面量方式创建空的数组
    var 数组名 = [];//若写n,则代表数组的长度
    
    //2. 使用数组字面量方式创建带初始值的数组
    //3. 声明数组并赋值称为数组的初始化
    var arr =['1','2','3','4'];
    var arr2 = ['fan',true,17.5];//数组中可以存放任意类型的数据

访问数组元素

索引(下标):用来访问数组元素的序号。索引从 0 开始

  // 定义数组
  var arrStus = [1,2,3];
  // 获取数组中的第2个元素 
  alert(arrStus[1]); 
  // 如果访问数组时没有和索引值对应的元素(数组越界),
  // 返回值为undefined

遍历数组

把数组中的元素从头到尾都访问一次

数组长度(元素个数) = 数组名.length

 // 数组的长度,默认情况下等于元素的个数
 // 当我们数组里面的元素发生了变化,length属性跟着一起变
 // 如果设置的length属性值大于数组的元素个数,则会在数组末尾出现空白元素;
 // 如果设置的length属性值小于数组的元素个数,则会把超过该值的数组元素删除
  var arr = ["red", "blue", "green"];
  for (var i = 0; i < arr.length; i++) {
    console.log(arr[i]);
  }
  
  arr.length = 2;
  console.log(arr);// red blue

想要输出多个变量可以用逗号分隔 console.log(sum, average)

数组中新增元素

①修改数组长度length

  • length是可读写的
  • 通过修改length长度来实现数组扩容的目的

②通过修改数组索引新增数组元素

追加数组元素

var arr1 = ['red', 'green', 'blue'];
arr1[3] = 'pink';
console.log(arr);//pink加入到了数组中

不要直接给数组名赋值否则里面的数组元素都没有了


数组中可以通过以下方式在数组的末尾插入新元素:

// 1. 数组[数组.length] = 新数据;
  arr = [] //arr.length = 0;
  for (var i = 0; i < 10; i++) {
    arr[arr.length] = '0';
  }
  console.log(arr);

数组案例

// 1. 筛选数组 大于10的元素选出来放到新数组中
  var arr = [2, 0, 6, 1, 77, 0, 52, 0, 25, 7];
  var newArr = [];
  var j = 0;
  for (var i = 0;i < arr.length; i++){
    if (arr[i] >= 10) {
      newArr[j] = arr[i];
      j++;
    }
  }
  console.log(newArr);
  //第二种方法 利用数组长度的可变性
  for (var i = 0;i < arr.length; i++){
    if (arr[i] >= 10) {
      newArr[newArr.length] = arr[i];
    }
  }
// 2. 翻转数组 
  //  把旧数组索引号第4个取过来(arr.length - 1),给新数组索引号第0个元素 (newArr.length)
  //  我们采取 递减的方式  i--
  var arr = ['red', 'green', 'blue', 'pink', 'purple'];
  var newArr = [];
  for(var i = arr.length - 1; i >= 0;i--) {
    newArr[newArr.length] = arr[i]
  }
  console.log(newArr);
//3. 删除数组指定元素
        var arr = [2, 6, 1, 0, 77, 6];
        var newArr = [];
        for (var i = 0; i < arr.length; i++){
            if (arr[i] != 0) {
                newArr[newArr.length] = arr[i];
            }
        }
        console.log(newArr);

冒泡排序

是一种算法,把一系列的数据按照一定的顺序排列显示(从小到大,或从大到小)

在这里插入图片描述

var arr = [1, 4, 2, 9];
        for(var i = 0; i < arr.length - 1; i++) {
      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);//1 2 4 9 

网站公告

今日签到

点亮在社区的每一天
去签到