javaScript中的数组

之前我们已经简单了解过数组了,现在我们开始详细的学习数组,数组就是存放一组数据的优雅变量

创建数组的两种方法:

let 数组名 = newArray()

let arr = newArray()  / / 注意点这里的A一定要大写

注意点:我们使用这种方法创建数组,里边只放一个数字,会被判断为数组的长度

let arr = new Array(5);
log(arr) //这里的5会变成数组里边的数字 //但是放多个就不会

利用字面量的方式创建数组

let 数组名 = [“,“,“,“,“,“,“,“,“] //这里的数组字面量就是[ ]

数组中可以存放任意类型的数据,例如字符串,数字,布尔值等

访问数组,就需要使用数组的索引号,来访问数组中的内容

数组的长度 lenght

数组名.lenght来查看一个数组的长度

遍历数组

let arr = [1,2,3,4,5]

for (let i = 0; i < arr.leng;i++) {

log(arr[i])  //这里就是遍历数组中所以的数值

}

数组里边的数字相加案例

 let arr = [1, 3, 5, 7, 9, 2, 4, 6, 8]
    console.log(arr.length)
    //非空数组,数组长度比索引多1
    //声明一个求和变量
    let sum = 0
    //遍历数组i充当索引号
    for (let i = 0; i < arr.length; i++) {
      console.log(i);
      document.write(`${arr[i]}<br>`);
      sum += arr[i];//sum = sum + arr[i]
    }
    document.write(`${sum} <br>`);
    //求数组相加以后的平均值,arr.length是数组的长度
    document.write(sum / arr.length);

用if和三元运算来判断数组中的最大值

    let arr = [1, 3, 5, 7, 8, 9, 11]
    //加入arr数组第一个值为最大值,赋值给max进行比较
    let max = arr[0] //先用arr和max比较,如果大于max赋值给max
    let min = arr[0] //先用arr和min比较,如果小于min赋值给min
    // 遍历
    for (let i = 0; i < arr.length; i++) {
      console.log(i); //i是索引
      console.log(arr[i]); //打印数组里边的每个数字
      //判断大小  判断最大值
      if (arr[i] > max) {  //arr第一个数字和max对比,然后进行循环比较
        max = arr[i];  //如果arr[i]大于max,就赋值给max
      }
      //判断大小  判断最小值
      if (arr[i] < min) {  //arr第一个数字和min对比,然后进行循环比较
        min = arr[i];  //如果arr[i]小于max,就赋值给max
      }
    }
    document.write(`数组最大值${max} <br>`)
    document.write(`数组最小值${min} <br>`)

    // 使用三元运算符进行判断
    let Arr = [1, 3, 5, 7, 8, 9, 11]
    let max1 = arr[0] //先用arr和max比较,如果大于max赋值给max
    let min1 = arr[0] //先用arr和min比较,如果小于min赋值给min
    for (let i = 1; i < Arr.length; i++) {
      Arr[i] > max1 ? max1 = Arr[i] : max1
      Arr[i] < min1 ? min1 = Arr[i] : min1
    }
    document.write(`数组最大值${max1} <br>`)
    document.write(`数组最大值${min1} <br>`)

数组的增删改查操作

push()在数组尾部添加

数组名.push(追加的数组尾部元素)

unshift()在数组头部添加

数组名.unshift(追加在数组头部的元素)

pop()删除数组中的最后一个元素

数组名.pop()删除数组中最后一个元素,括号里边不要写任何数据

shift()删除数组中第一个元素

数组名.shift()删除数组中的第一个元素,括号中不要写任何元素

splice()删除的位置,删除的个数,【省略无数参数】

数组名.spilce(删除的位置(记得从0开始),删除的个数)删除指定位置的,删除几个

数组名.splice(删除的位置),只写了删除的位置,那么从这个元素开始,之后的都会被删除掉

数组名.splice(删除的位置,删除的个数,替换的元素)这样删除以后会有新的元素替换上去

数组名.splice(删除的位置,0,替换的元素)0表示我没有删除,但我写了替换参数,这样就不会删除,并且在替换参数后边添加你写的参数

数组的增删改查操作

 //1234 push(追加内容) // 在尾部追加
    let arr = [1]
    let res = arr.push(2)
    console.log(res); //  追加以后的反馈值是数组长度2
    console.log(arr); //  追加以后的数组内容[1,2]
    //1234 unshift(追加内容) //  在头部追加
    let arr1 = [1]
    let res2 = arr1.unshift(2)
    console.log(res2); // 追加以后的反馈值是数组长度2
    console.log(arr1); // 追加以后的数组内容[2,1]
    //总结 共同:都有返回值,返回值是追加之后的数组长度
    //1234pop删除数组中最后一个元素
    let arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
    arr2.pop()
    console.log(arr2) //  会删除数组中最后一个元素,只认识最后一个数据
    //1234shift()删除数组中的第一个元素
    arr2.shift() //  会删除数组中最后一个元素,只认识第一个数据
    //总结小括号里边不要加数据,返回值是删除的这个元素
    arr2.splice(3, 1)  //删除的位置,删除的个数,【省略无数个参数】  删除指定位置
    // 1234拓展:
    // 1,保留到某个位置以后,删除后边所有的参数
    // arr2.splice(1) //只写了位置,不写其他参数,表示这个位置后边的参数全部删除
    // 2,更改某个参数
    // arr2.splice(2, 1, 3)  //第一个值表示删除的位置 第二个值表示删除的个数 第三个值表示替换的参数
    // arr2.splice(3, 0, 2)  //第一个值表示删除的位置 第二个值表示没有删除  第三个值表示添加的内容 没有删除甚至在那个位置添加了内容 

数组去0操作

    let arr = [1, 0, 2, 3, 0, 4, 0, 5, 0, 5, 0, 4]
    let data = []
    for (let i = 0; i < arr.length; i++) {
      // console.log(i);
      // console.log(arr[i]);
      if (arr[i] === 0) {
      } else { data.push(arr[i]) }
    }
    document.write(data)
    // for (let i = 0; i < arr.length; i++) {
    //   if (arr[i] !== 0) {
    //     data.push(arr[i])
    //   }
    // }
    // document.write(data)

冒泡排序

  <center>
    冒泡排序:是一种算法,把一系列数据按照一定的顺序进行排列显示(从大到小或者从小到大) <br>
    一共需要的趟数 我们用外层for循环 <br>
    每一趟交换的次数 我们用里层for循环 <br>
    长度就是数组长度减去次数 <br>
    但是我们次数是从0开始的 所以最终 arr.length - i - 1 <br>
    每一次我们交换2个变量就好了 <br>
  </center>
  <script>
    let arr = [5, 4, 3, 1, 2]
    let a = 0
    // arr[j] //是arr数组中的第一个数字,索引号是0
    // arr[j + 1] //是arr数组中第二个数字,索引号是1
    for (let i = 0; i < arr.length; i++) {
      for (let j = 0; j < arr.length; j++) {
        if (arr[j] > arr[j + 1]) {
          a = arr[j];
          arr[j] = arr[j + 1]
          arr[j + 1] = a
        }
      }
    }
    document.write(arr)
  </script>

原文地址:http://www.cnblogs.com/hgng/p/16876773.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性