• 把数组里的假值转为0


        // 假值转换为0
            let toZero = (arr)=>{
               return arr.map(v=>v||0)
            }
            let c = [1,2,3,0,false,null,undefined,NaN,'']
            console.log(toZero(c)); // [1, 2, 3, 0, 0, 0, 0, 0, 0]

    上面这个方法可以把假值,转换为0,但是不能把'0.00','0','0.0000'之类的值转换成为0,因为'0.00','0','0.000'这类的值是真值

    所以,如果要把类似'0.00'这样的值转换为0那就要下面的方法

        // 假值转为 0 ,包括'0','0.00','0.0000'和 空字符串,字符串数字转为数字
            let toZero2 = (arr)=>{
                let newArr = []
                   arr.forEach(v=>{
                    typeof v!=='string'?  ( v = v || 0) :(v =   Number(v) || 0)
                    newArr.push(v)
                })
                return newArr
            }
            let d = [1,2,0,'0','0.00','0.0000',undefined,null,false,NaN,3,'','0.03','0.9','100','0.4236']
            console.log(toZero2(d));// [1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0.03, 0.9, 100, 0.4236]

     还可以这样:

     let q = [1,2,0,'0','0.00','0.0000',undefined,null,false,NaN,3,'','0.03','0.9','100','0.4236']
            let toZero3 = (arr)=>{
                let newArr = []
                arr.forEach(v=>{
                    typeof v!== 'number'?typeof v === 'string'?(v=+v):(v=0) : !(!!v) && (v=0)
                    newArr.push(v)
                })
                return newArr
            }
            console.log(toZero3(q));
  • 相关阅读:
    JS运算符
    JS基础
    0507-弹性盒子
    0506css3(2D、3D)动画
    CSS3边框
    0503-格式与布局
    0502-边框边界
    0502-其他html标签
    0428-专题块状元素
    mysql 数据库学习
  • 原文地址:https://www.cnblogs.com/luguankun/p/13709588.html
Copyright © 2020-2023  润新知