博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js价格递增递减,保留亿位小数
阅读量:6820 次
发布时间:2019-06-26

本文共 839 字,大约阅读时间需要 2 分钟。

需求需要做一个价格递增递减效果,思路是:

1、0为终点,递增无上限,并且保留亿位小数;

2、递减0为下限,并且保留亿位小数;废话不多说,直接上代码。

// 价格递增-当前参数分别是:当前价格/多少倍数=(添加"add"为递增,不添为递减)

function priceAdd(a,b,c){

// 获取小数位置,整数和小数单独处理
var i = a.indexOf('.');
if(a.indexOf('.') !='-1'){
// 当前价格 * 一亿,进行递增
var a = Number(a)* Number(b);
// 设置递增或递减
if(c =='add'){
a++;
}else{
a = --a;
}
// 使用正则处理一亿小数
var a = numberStr1(a,b);
return a;
}else{
// 当前价格 * 一亿,进行递增
var a = Number(a)* Number(b);
// 设置递增或递减
if(c =='add'){
a++;
}else{
a = --a;
}
a = Number(numberStr1(a,b));
return a;
}
}

其中保留7位小数,计算机没有问题,但是保留8位小数会出现科学计算,处理方法是:

// 动态价格:当前价格/改为动态一个亿

function numberStr1(str,str1){
var s = (Number(str)/Number(str1)).toFixed(8).replace(/\.0+$/, "").replace(/(\.\d+[1-9])0+$/, "$1");
return s;
}

// 当前价格/一个亿、添加add为递增,不添加为递减

priceAdd(a,b,c)

a:当前价格

b:一亿小数
c:添加add为递增,不添加为递减

转载于:https://www.cnblogs.com/aihao/p/9968626.html

你可能感兴趣的文章
蒙特卡罗(Monte Carlo)方法简介
查看>>
PIE SDK符号选择器
查看>>
python 爬虫
查看>>
【Mysql】使用子查询提高MySQL分页效率 limit(摘自网络)
查看>>
IDEA的Maven配置
查看>>
购物车
查看>>
读《大道至简》有感
查看>>
别人总结的一些drupal模块(1)
查看>>
第一篇博客 iframe自适应高度
查看>>
android异步加载图片并缓存到本地实现方法
查看>>
成长杂记
查看>>
黑马程序员---SQL进阶之事务、视图和存储过程
查看>>
xcode Simulated Metrics xib设置小问题
查看>>
了解Web及网络基础(一)
查看>>
C#实战--对齐输出
查看>>
nginx下使用memcache
查看>>
利用反射给类中方法加钩子
查看>>
【PHP面向对象】连贯操作实现
查看>>
POJ3685 Matrix(嵌套二分)
查看>>
Qt5.5.1+vs2013
查看>>