js开发生涯

66 阅读1分钟

今天我们来探讨一下数组去重和Mah的一些语法

在进行数组去重之前,我们首先要了解数组塌陷

什么是数组塌陷?

就是指在删除数组中的元素的时候,元素的下标会向前递进,会引起删除不干净的问题

那么如何解决呢?

方法有两个

1,让他倒着循环

        var arr = [1, 2, 3, 4, 57, 8, 9]
        for (var i = arr.length - 1; i >= 0; i--) {
            arr.splice(i, 1)
        }
        console.log(arr);

2.退一步

        var arr = [1, 2, 3, 4, 57, 8, 9]
        for (var i = 0 ; i < arr.length; i++) {
            arr.splice(i, 1)
            i--
        }
        console.log(arr);

数组去重

核心就是进行数组元素的查找,采用indexof语法

思路 直接遍历数组

将当前项和后一项进行对比,查看是否有重复项

如果有就删除一个

        var arr = [1, 2, 3, 4,7,8,7,4, 5, 8, 9]
        for (var i = 0 ; i < arr.length; i++) {
         var index = arr.indexOf(arr[i],i+1)
         if(index != -1){
            arr.splice(index,1)
            i--
          }
        }
        console.log(arr);

Math()方法

   在js中math给我们提供了一套操作数据的一些方法
        random
        语法Math.random()
        作用,得到一个随机数,范围在01 之间
        round
        语法Math.round()
        作用,将这个数据(小数),按照四舍五入的方式变成整数
        ceil
        语法 Math.ceil(数字)
        作用,将这个数字向上取整
        floor
        语法 Math.ceil(数字)
        作用,将这个数字向下取整
        abs
        语法 Math.abs(数字)
        作用,返回这个数据的绝对值
        sprt
        语法 Math.sqrt(数字)
        作用,求平方根
        pow
        语法 Math.pop(基数,幂)
        作用,返回基数的几次幂
        max
        语法 Math.max(数字1,数字2,数字3 ....)
        作用,返回传入数字中最大的值
        min
        语法 Math.min(数字1,数字2,数字3 ....)
        作用,返回传入数字中最小的值
        PI
        语法 Math.PI
        作用,返回一个π