最新公告
  • 欢迎您光临欧资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • 【每日一题】红豆不堪架构君的声音

    使用jsjs小数点保留2位四舍五入,值保留两位小数(两种情况)Html部分:

    总计:¥{{totalMoney|numFilter}}

    Js部分:(注意toFixed方法只能用于数值数据)//案例1:reserved…

    js小数点保留2位四舍五入_js 字符串保留2位小数_js保留一位小数 不四舍五入

    大家好,我是建筑师,一个会写代码,会背诗的建筑师。今天讲讲js的使用和数值小数点后两位的处理(两种情况),希望可以帮助大家提高!!!

    html部分:

    合计: { {totalMoney | numFilter}}

    只听到建筑师办公室传来建筑师的声音:

    红豆难看,眼里满是相思泪。谁将向上或向下匹配?

    Js部分:(注意toFixed方法只能用于数值数据)

    // 情况一:保留两位小数的过滤器,尾数四舍五入

    此代码由Java架构师必看网-架构君整理
    filters: { numFilter (value) { let realVal = '' if (!isNaN(value) && value!== '') { // 截取当前数据到小数点后两位 realVal = parseFloat(value).toFixed(2) } else { realVal = '-' } return realVal

    js 字符串保留2位小数_js小数点保留2位四舍五入_js保留一位小数 不四舍五入

    } }

    // 情况2:保留两位小数的过滤器,尾数不四舍五入(这里有个问题js小数点保留2位四舍五入,当源数据的第三位小数是数字9,第四位会导致第三位结转,得到最终的数据仍然没有被截取 eg: 3.1798 截取两个比特会变成 3.18)

    filters: {
      numFilter (value) {
        let realVal = ''
        if (!isNaN(value) && value!== '') {
          // 截取当前数据到小数点后三位
          let tempVal = parseFloat(value).toFixed(3)
          realVal = tempVal.substring(0, tempVal.length - 1)
        } else {
          realVal = '-'
        }
        return realVal
      }
    }

    // 案例2:优化成如下方式,封装成公共函数,使用后立即调用

    此代码由Java架构师必看网-架构君整理
    filters: { numFilter (value) { return cutOutNum(value) } } ----- 将此函数封装在外部js中 ----- /**

    js保留一位小数 不四舍五入_js小数点保留2位四舍五入_js 字符串保留2位小数

    * 对源数据截取decimals位小数,不进行四舍五入 * @param {*} num 源数据 * @param {*} decimals 保留的小数位数 */ export const cutOutNum = (num, decimals = 2) => { if (isNaN(num) || (!num && num !== 0)) { return '-' } function toNonExponential (_num) { var m = Number(_num).toExponential().match(/d(?:.(d*))?e([+-]d+)/) return Number(_num).toFixed(Math.max(0, (m[1] || '').length - m[2])) } // 为了兼容科学计数法的数字 num = toNonExponential(num) // 获取小数点的位置 + 1(不存在小数点的indexOf值为-1) const pointIndex = String(num).indexOf('.') + 1 // 获取小数点后的个数(需要保证有小数位) const pointCount = pointIndex ? String(num).length - pointIndex : 0 // 补零函数 function zeroFill (zeroNum, num) { for (let index = 0; index < zeroNum; index++) { num = `${num}0` }

    js 字符串保留2位小数_js小数点保留2位四舍五入_js保留一位小数 不四舍五入

    return num } // 源数据为"整数"或者小数点后面小于decimals位的作补零处理 if (pointIndex === 0 || pointCount <= decimals) { let tempNumA = num // 区分"整数"和"小数"的补零 if (pointIndex === 0) { tempNumA = `${tempNumA}.` tempNumA = zeroFill(decimals - pointCount, tempNumA) } else { tempNumA = zeroFill(decimals - pointCount, tempNumA) } return String(tempNumA) } // 截取当前数据到小数点后decimals位 const Int = String(num).split('.')[0] const Decimal = String(num).split('.')[1].substring(0, decimals) const tempNumB = `${Int}.${Decimal}` // 需求:数据为0时,需要显示为0,而不是0.00... return Number(tempNumB) === 0 ? 0 : tempNumB }

    我想你会喜欢:

    站内大部分资源收集于网络,若侵犯了您的合法权益,请联系我们删除!
    欧资源网 » 【每日一题】红豆不堪架构君的声音

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    欧资源网
    一个高级程序员模板开发平台

    发表评论