问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

怎样取float的前两位小数

发布网友 发布时间:2022-04-13 17:47

我来回答

3个回答

热心网友 时间:2022-04-13 19:16

怎样取float的前两位小数
以下我们将为大家介绍 JavaScript 保留两位小数的实现方法:
四舍五入
以下处理结果会四舍五入:
var num =2.446242342;
num = num.toFixed(2); // 输出结果为 2.45

不四舍五入
以下处理结果不会四舍五入:
第一种,先把小数边整数:
Math.floor(15.7784514000 * 100) / 100
// 输出结果为 15.77

第二种,当作字符串,使用正则匹配:
Number(15.7784514000.toString().match(/^\d+(?:\.\d{0,2})?/))
// 输出结果为 15.77,不能用于整数如 10 必须写为10.0000

注意:如果是负数,请先转换为正数再计算,最后转回负数
javascript保留两位小数的实例:
<script type="text/javascript">
//保留两位小数
//功能:将浮点数四舍五入,取小数点后2位
function toDecimal(x) {
var f = parseFloat(x);
if (isNaN(f)) {
return;
}
f = Math.round(x*100)/100;
return f;
}

//制保留2位小数,如:2,会在2后面补上00.即2.00
function toDecimal2(x) {
var f = parseFloat(x);
if (isNaN(f)) {
return false;
}
var f = Math.round(x*100)/100;
var s = f.toString();
var rs = s.indexOf('.');
if (rs < 0) {
rs = s.length;
s += '.';
}
while (s.length <= rs + 2) {
s += '0';
}
return s;
}

function fomatFloat(src,pos){
return Math.round(src*Math.pow(10, pos))/Math.pow(10, pos);
}
//四舍五入
alert("保留2位小数:" + toDecimal(3.14159267));
alert("强制保留2位小数:" + toDecimal2(3.14159267));
alert("保留2位小数:" + toDecimal(3.14559267));
alert("强制保留2位小数:" + toDecimal2(3.15159267));
alert("保留2位小数:" + fomatFloat(3.14559267, 2));
alert("保留1位小数:" + fomatFloat(3.15159267, 1));

//五舍六入
alert("保留2位小数:" + 1000.003.toFixed(2));
alert("保留1位小数:" + 1000.08.toFixed(1));
alert("保留1位小数:" + 1000.04.toFixed(1));
alert("保留1位小数:" + 1000.05.toFixed(1));

//科学计数
alert(3.1415.toExponential(2));
alert(3.1455.toExponential(2));
alert(3.1445.toExponential(2));
alert(3.1465.toExponential(2));
alert(3.1665.toExponential(1));
//精确到n位,不含n位
alert("精确到小数点第2位" + 3.1415.toPrecision(2));
alert("精确到小数点第3位" + 3.1465.toPrecision(3));
alert("精确到小数点第2位" + 3.1415.toPrecision(2));
alert("精确到小数点第2位" + 3.1455.toPrecision(2));
alert("精确到小数点第5位" + 3.141592679287.toPrecision(5));

热心网友 时间:2022-04-13 20:34

这个办法很多啦,大部分编程语言都提供保留小数的函数,调用下就行,或者你自己写个算法也很简单,大致给你个思路,你把你的float*100,然后转成int类型,多余的小数位就没有了,然后再/100就是你要的保留两位小数的效果了。

热心网友 时间:2022-04-13 22:09

aremaketirednessofthedaydisappear。What’smore,togofishing
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
原神七神实力排名谁最擅长战斗 原神七神实力排名官方 原神七神是谁分别叫什么名字 水最高温度是多少度 什么有脚不走路下是什么 618淘特买返红包规则是什么?附购物津贴规则 淘宝特价版新增“官方补贴”频道 梦见白色黄鼠狼跟我说话,我给它磕了三个头,还梦见一只黄色的也跟... qq好友动态提醒怎么关闭 关于再见2023你好2023跨年朋友圈说说句子八十句 再见2020,你好2021说说句子80条 vivo X9(全网通)总是闪退什么问题?怎么解决? vivox9是全网通吗?能放电信卡吗? vivo x9是全网通的嘛?? 智能马桶一体机,哪个品牌好? 有比较好的智能马桶品牌推荐吗? 办农行信用卡需要哪些手续 德希顿智能马桶怎么样?德希顿智能马桶推荐 进口智能马桶哪个好,求进口品牌 微信上绑定不了银行卡,说卡达到上限,是是么意思? 为什么那么多人喜欢在朋友圈发心灵鸡汤 关于朋友圈鸡汤泛滥你怎么看? 朋友圈晒煲靓汤的句子有哪些? 人民币的背景图案使用什么绘画手法 国庆节七十周年前夕大街小巷到处贴了许多口号和标语修改病句? 姐妹给我顿鸡汤喝怎么发朋友圈? 天天在朋友圈发鸡汤的人,是不是都比较多愁善感? 天天在朋友圈发鸡汤的人,一般过得都怎么样? 婆婆炖的鸡汤发朋友圈 喜欢发朋友圈鸡汤的人心态 抗战胜利70周年消防安保任务先进个人,上报材料包含:2000字详细事迹材料和500字简要事迹材料电 vivo x9全网通手机多少钱 vivox9,全网通,4G+64G,换过屏,有磕碰,屏幕有点小划痕,其他良好,能卖多少_百度问一问 vivo x9全网通与移动版全网通有什么区别? 显像管电视出现横条纹是什么原因 科勒和toto的智能马桶,哪个好 海尔电视机出现横条纹是怎么回事 surf the Net是什么意思 surf the net中间要不要加介词on? 用surf the net造句 surf the Net的三单形式 surf the Net 那个Net的N是否一定要大写? 他中午上网。he surf the Net in the afternoon.这样写对不对? howoftendoyousurfthenet是什么意思 Surf the net中文意思是什么 surf the Net这里的N一定要大写吗? &quot;上网&quot;的英文怎么翻译 英语练习2 do you surf the net in your school?yes but maybe,tonightismylasttime,to,surfthenet.中文是什么 Do you often surf the Net? 回答4到5句即可.
  • 焦点

最新推荐

猜你喜欢

热门推荐