JavaScript保留两位小数的2个自定义函数


Posted in Javascript onMay 05, 2014

对于一些小数点后有多位的浮点数,我们可能只需要保留2位,但js没有提供这样直接的函数,所以我们得自己写函数实现这个功能,代码如下:

function changeTwoDecimal(x) {
    var f_x = parseFloat(x);
    if (isNaN(f_x)) {
        alert('function:changeTwoDecimal->parameter error');
        return false;
    }
    var f_x = Math.round(x * 100) / 100;
    return f_x;
}

功能:将浮点数四舍五入,取小数点后2位用法:changeTwoDecimal(3.1415926)返回3.14 changeTwoDecimal(3.1475926)返回3.15

js保留2位小数(强制)

对于小数点位数大于2位的,用上面的函数没问题,但是如果小于2位的,比如:changeTwoDecimal(3.1),将返回3.1,如果你一定需要3.10这样的格式,那么需要下面的这个函数:

function changeTwoDecimal_f(x) {
    var f_x = parseFloat(x);
    if (isNaN(f_x)) {
        alert('function:changeTwoDecimal->parameter error');
        return false;
    }
    var f_x = Math.round(x * 100) / 100;
    var s_x = f_x.toString();
    var pos_decimal = s_x.indexOf('.');
    if (pos_decimal < 0) {
        pos_decimal = s_x.length;
        s_x += '.';
    }
    while (s_x.length <= pos_decimal + 2) {
        s_x += '0';
    }
    return s_x;
}

功能:将浮点数四舍五入,取小数点后2位,如果不足2位则补0,
这个函数返回的是字符串的格式用法:changeTwoDecimal(3.1415926)返回3.14 changeTwoDecimal(3.1)返回3.10
Javascript 相关文章推荐
js 字符串转换成数字的三种方法
Mar 23 Javascript
使用JavaScript实现连续滚动字幕效果的方法
Jul 07 Javascript
jquery中实现时间戳与日期相互转换
Apr 12 Javascript
jQuery使用中可能被XSS攻击的一些危险环节提醒
May 24 Javascript
网页中右键功能的实现方法之contextMenu的使用
Feb 20 Javascript
JavaScript实现前端实时搜索功能
Mar 26 Javascript
ES6学习教程之Map的常用方法总结
Aug 03 Javascript
Three.js实现浏览器变动时进行自适应的方法
Sep 26 Javascript
详解javascript设计模式三:代理模式
Mar 25 Javascript
VsCode里的Vue模板的实现
Aug 12 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
Aug 25 Javascript
Echarts.js无法引入问题解决方案
Oct 30 Javascript
JS判断、校验MAC地址的2个实例
May 05 #Javascript
JQuery EasyUI 数字格式化处理示例
May 05 #Javascript
一个简单的实现下拉框多选的插件可移植性比较好
May 05 #Javascript
javascript生成随机颜色示例代码
May 05 #Javascript
借助javascript代码判断网页是静态还是伪静态
May 05 #Javascript
javascript中的nextSibling使用陷(da)阱(keng)
May 05 #Javascript
利用函数的惰性载入提高javascript代码执行效率
May 05 #Javascript
You might like
php中jpgraph类库的使用介绍
2013/08/08 PHP
深入解析php中的foreach函数
2013/08/31 PHP
网站防止被刷票的一些思路与方法
2015/01/08 PHP
php基于session实现数据库交互的类实例
2015/08/03 PHP
YII框架批量插入数据的方法
2017/03/18 PHP
php7性能提升的原因详解
2019/10/13 PHP
jquery 追加tr和删除tr示例代码
2013/09/12 Javascript
JavaScript中instanceof运算符的用法总结
2013/11/19 Javascript
Jquery对数组的操作技巧整理
2014/03/25 Javascript
jQuery中常用的遍历函数用法实例总结
2015/09/01 Javascript
Javascript中神奇的this
2016/01/20 Javascript
ECMAScript6 新特性范例大全
2017/03/24 Javascript
基于Vue实现tab栏切换内容不断实时刷新数据功能
2017/04/13 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
基于滚动条位置判断的简单实例
2017/12/14 Javascript
js读取本地文件的实例
2017/12/22 Javascript
vue2.0 如何把子组件的数据传给父组件(推荐)
2018/01/15 Javascript
Angular使用cli生成自定义文件、组件的方法
2018/09/04 Javascript
vue.js 实现点击按钮动态添加li的方法
2018/09/07 Javascript
js实现多个倒计时并行 js拼团倒计时
2019/02/25 Javascript
vue使用keep-alive保持滚动条位置的实现方法
2019/04/09 Javascript
实例讲解Python设计模式编程之工厂方法模式的使用
2016/03/02 Python
Python 如何访问外围作用域中的变量
2016/09/11 Python
Django中利用filter与simple_tag为前端自定义函数的实现方法
2017/06/15 Python
Python字符串匹配之6种方法的使用详解
2019/04/08 Python
python集合常见运算案例解析
2019/10/17 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
2020/10/15 Python
python爬虫搭配起Bilibili唧唧的流程分析
2020/12/01 Python
在Pycharm中安装Pandas库方法(简单易懂)
2021/02/20 Python
可以在一个PHP文件里面include另外一个PHP文件两次吗
2015/05/22 面试题
如何唤起类中的一个方法
2013/11/29 面试题
应届生煤化工求职信
2013/10/21 职场文书
党支部组织生活会整改方案
2014/09/30 职场文书
2014年后备干部工作总结
2014/12/08 职场文书
教师反邪教心得体会
2016/01/15 职场文书
Vue2.0搭建脚手架
2022/03/13 Vue.js