• JavaScript随手笔记---保留小数位


    请添加图片描述

    • 💌 所属专栏:【JavaScript随手笔记】

    • 😀 作  者:我是夜阑的狗🐶

    • 🚀 个人简介:一个正在努力学技术的码仔,专注基础和实战分享 ,欢迎咨询!

    • 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘


    前言

      大家好,又见面了,我是夜阑的狗,本文是专栏【avaScript随手笔记】专栏的第1篇文章;
      在JS中保留小数的方法有很多,可以Math函数或者以字符串形式来进行处理,但在有的时候需要四舍五入,有时候不需要,这里围着这两点展开;
      专栏地址:【JavaScript随手笔记】 , 此专栏是我是夜阑的狗对JS保留小数的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。
      如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


    一、JS四舍五入保留小数

    1.toFixed()函数

      使用toFixed()函数可以对小数位进行四舍五入,得到的结果是字符串类型;

    	var number = 0.9996
    	var Test = number.toFixed(2); //这里会自动四舍五入,保留两位小数
    	
    	console.log(Test); //1.00
    	console.log(typeof(Test)); //String
    
    • 1
    • 2
    • 3
    • 4
    • 5

    二、JS不四舍五入保留小数

      这里的方法均不会对小数四舍五入处理

    1.Math.floor()和Math.ceil()函数

      Math.floor()对数值进行向下取整,Math.ceil()向上取整,并且不改变数据类型。这两个函数均只保留整数,所以还要/100才能得到想要的数据;

    var number = 1.7332;
    var Test1 = Math.floor(number * 100) / 100;//保留两位小数,
    var Test2 = Math.ceil(number * 100) / 100;//保留两位小数
    
    console.dir(Test1);        //1.73
    console.dir(typeof(Test1)); // number
    
    console.dir(Test2);        //1.74
    console.dir(typeof(Test2)); // number
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2.parseInt()函数

      从前面两个函数来看,也可以使用parseInt()进行取整后再除以100。

    var number = 0.99996;
    var Test1 = parseInt(number * 100) / 100;//保留两位小数,
    
    console.dir(Test1);        //0.99
    console.dir(typeof(Test1)); // number
    
    • 1
    • 2
    • 3
    • 4
    • 5

      但是,当小数位只有一位或者两位都为0的情况下,则只会保留整数。

    var number = 0.900006;
    var Test1 = parseInt(number * 100) / 100;//保留两位小数,
    
    console.dir(Test1);        //0.9
    console.dir(typeof(Test1)); // number
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3.parseInt()和toFixed()、Math.floor()与toFixed()

      这里如果需要自带补0的话,则要跟toFixed() 函数进行处理。

    var number = 0.900006;
    var Test1 = (parseInt(number * 100) / 100).toFixed(2);//保留两位小数,
    
    console.dir(Test1);        //0.90
    console.dir(typeof(Test1)); // number
    
    • 1
    • 2
    • 3
    • 4
    • 5

      Math.floor()也是可以跟toFixed()函数一起进行处理的。

    var number = 0.900006;
    var Test1 = (Math.floor(number * 100) / 100).toFixed(2);//保留两位小数,
    
    console.dir(Test1);        //0.90
    console.dir(typeof(Test1)); // number
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4.字符串匹配

      这里要注意的是先将数据转换为字符串,最后在转换为数值类型。

    var number = 0.900006;
    //这里使用正则表达式来进行处理
    var Test1 = Number(number.toString().math(/^\d+(?:\.\d{0,2})?/)); 
    
    console.dir(Test1);        //0.90
    console.dir(typeof(Test1)); // number
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    总结

    以上就是今天要讲的内容,本文仅仅简单介绍了JS保留小数位的方法,分别从四舍五入和是否自动补0这两个方面进行入手。

      感谢观看,如果有帮助到你,请给文章点个赞和收藏,让更多的人看到。🌹 🌹 🌹

      也欢迎你,关注我。👍 👍 👍

      原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!

    更多专栏订阅:



    订阅更多,你们将会看到更多的优质内容!!

  • 相关阅读:
    mmc子系统分析(二)
    【BUG】已解决:ModuleNotFoundError: No module named ‘cv2’
    Netty的零拷贝(Zero-Copy)
    单例设计模式Singleton
    【Rust日报】2023-11-08 RustyVault -- 基于 rust 的现代秘密管理系统
    信钰证券:中央汇金出手,金融板块沸腾,后续还有哪些可以期待?
    基于接口的动态代理: JDK动态代理
    【AVL树】
    概率神经网络的主要思想,神经网络随机数预测
    初识SDN(二)
  • 原文地址:https://blog.csdn.net/csh1807266489/article/details/126853827