- 浏览: 61358 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
DiaoCow:
请教下作者,我想用F3替代ctrl+]用来查找函数定义,在vi ...
使用ctags和vim快速查看内核源代码 -
jackykennedy:
非常感谢。
中国手机开发者联盟CMD100 邀请码 -
ruler_internet:
非常不错,这个方法可行
Javascript 封装 HashMap
在开发过程中经常遇到要调整小数的格式,如保留小数点后两位等等。方法也颇为常见,备忘如下。
第一种,利用math.round
var original=28.453
1) //round "original" to two
decimals
var result=Math.round(original*100)/100; //returns 28.45
2)
// round "original" to 1 decimal
var result=Math.round(original*10)/10;
//returns 28.5
第二种,js1.5以上可以利用toFixed(x) ,可指定数字截取小数点后 x位
3) //round "original" to two decimals
var result=original.toFixed(2); //returns 28.45
4) // round "original" to 1 decimal
var result=original.toFixed(1); //returns 28.5
以上两种方法最通用,但却无法满足某些特殊要求,比如保留小数点后两位,如果不满两位,不满两位则补零。此时就有了第三种方法。
第三种,转换函数,这段代码来源于国外一个论坛。
function roundNumber(number,decimals) { var newString;// The new rounded number decimals = Number(decimals); if (decimals < 1) { newString = (Math.round(number)).toString(); } else { var numString = number.toString(); if (numString.lastIndexOf(".") == -1) {// If there is no decimal point numString += ".";// give it one at the end } var cutoff = numString.lastIndexOf(".") + decimals;// The point at which to truncate the number var d1 = Number(numString.substring(cutoff,cutoff+1));// The value of the last decimal place that we'll end up with var d2 = Number(numString.substring(cutoff+1,cutoff+2));// The next decimal, after the last one we want if (d2 >= 5) {// Do we need to round up at all? If not, the string will just be truncated if (d1 == 9 && cutoff > 0) {// If the last digit is 9, find a new cutoff point while (cutoff > 0 && (d1 == 9 || isNaN(d1))) { if (d1 != ".") { cutoff -= 1; d1 = Number(numString.substring(cutoff,cutoff+1)); } else { cutoff -= 1; } } } d1 += 1; } if (d1 == 10) { numString = numString.substring(0, numString.lastIndexOf(".")); var roundedNum = Number(numString) + 1; newString = roundedNum.toString() + '.'; } else { newString = numString.substring(0,cutoff) + d1.toString(); } } if (newString.lastIndexOf(".") == -1) {// Do this again, to the new string newString += "."; } var decs = (newString.substring(newString.lastIndexOf(".")+1)).length; for(var i=0;i<decimals-decs;i++) newString += "0"; //var newNumber = Number(newString);// make it a number if you like document.roundform.roundedfield.value = newString; // Output the result to the form field (change for your purposes) }
5) //round "original" to two decimals
var result=original.toFixed(2); //returns 28.45
6) // round "original" to 1 decimal
var result=original.toFixed(1); //returns 28.5
var original=28.4
var result=original.toFixed(2); //returns 28.40
发表评论
-
对国内4个常用CDN公共库加速服务的简单测试
2014-09-24 21:31 857由于本人的香港主机带宽较小,所以考虑使用国内的一些CDN公共 ... -
eclipse 忽略jquery压缩文件报错
2013-11-26 19:53 518Project -> Properties -> ... -
时间转换
2013-08-26 13:24 563/* * Unix timestamp -> 普通 ... -
jQuery.proxy可以往函数里传参
2013-08-06 10:33 818for (j = td_counter; j < row ... -
扩展prototype.js Object.deepExtend深度扩展
2013-07-29 23:08 753Object.deepExtend = function(d ... -
prototype.js1.7.1在IE下getOffsetParent()会返回body
2013-07-29 20:32 609prototype1.7.1在IE下getOffsetPar ... -
Javascript string repeat 重复拼写字符串
2013-07-17 17:31 419function repeat(s, n){ va ... -
Javascript 判断本地文件是否存在
2013-04-15 14:42 954function fileExists(url) { ... -
可以参考的javascript编码风格
2013-03-22 23:04 325https://github.com/aralejs/aral ... -
javascript 禁止鼠标右键
2013-03-22 13:29 551function doProhibit() { if( ... -
Javascript 浏览器设备识别
2012-08-28 10:29 815<!DOCTYPE html> <h ... -
javascript 两个感叹号
2012-04-24 12:31 694var foo1, foo2 = 0, foo3 = ... -
关于javascript定义类与对象
2012-04-22 23:25 666在说这个话题之前,我 ... -
javascript的call()与apply()
2012-04-22 19:08 543call方法: 语法:call([thisObj[, ... -
arguments.callee 调用自身
2012-04-21 18:37 605一、Arguments 该对象代表正在执行的函数和调 ... -
javascript callback
2012-04-21 12:15 642<html> <head> ... -
Keycode大全
2012-03-22 14:33 723//13 enter 58 : //32 ... -
JavaScript面向对象编程
2012-02-29 22:40 684转自:http://sd.csdn.net/a/2012011 ... -
Javascript 实现 php的 ip2long long2ip
2012-02-29 13:09 1803$ip = "192.0.34.166&quo ... -
JavaScript实现页面跳转的几种方式
2012-02-28 19:20 1441第一种: <script languag ...
相关推荐
接下来,我们定义了一个变量num,用来指定我们希望保留的小数点后的位数,这里设置为5位。 紧接着,我们创建了一个新的RegExp对象re。在构造函数RegExp中,我们定义了一个正则表达式字符串,这里使用的模式是"\d+\....
这样就实现了保留小数点后指定位数的功能。 举个例子,如果我们想保留数值2.3456789到小数点后两位,我们可以调用round函数,传入2.3456789和2作为参数,函数将输出2.35。这是因为在四舍五入的操作下,小数点后第三...
1. **使用toFixed()方法**:此方法可以将数字转换为字符串,并保留指定位数的小数。例如,`num.toFixed(2)`将保留两位小数。但要注意,这种方法会四舍五入,可能改变数值的原始精度。 2. **使用Math对象的方法**:...
在JavaScript编程中,经常需要对浮点数进行格式化,特别是当我们希望保留小数点后一定位数的小数时。以下介绍的四种方法可以帮我们实现这一目标。 首先,我们可以通过使用String对象的substring()方法来截取小数点...
本文将深入探讨如何在JS中保留小数点后指定的位数,并提供多种实现方式。 首先,最常见的方法是使用`Number.prototype.toFixed()`函数。这个内置函数可以将数字四舍五入到指定的小数位数。例如,在提供的代码段中:...
在JavaScript编程中,经常需要处理小数点后的数字,对其进行精确控制,比如保留固定位数的小数。这篇文章将介绍两种在JavaScript中实现小数点后精确到n位的方法,并通过实例演示其使用。 首先,要实现小数点后保留n...
- 最后,根据精度截取结果,保留小数点后的指定位数。 4. **去除空格**: 提供了两个辅助函数,`lTrim`和`rTrim`,以及一个通用函数`trim`,用于去除字符串两侧的空格。 - `lTrim(oldStr)`移除字符串左侧的所有...
`toFixed(x)` 是JavaScript中用于数字格式化的标准方法,它可以将数字四舍五入到小数点后指定的位数。`original.toFixed(2)` 会返回保留两位小数的字符串,`original.toFixed(1)` 则保留一位小数。这种方法简单易用...
`.9lf`是一个格式控制符,其中`9`指定了小数点后的位数,`l`指定了长浮点型(double)。如果你想要更高的精度,可以增加小数点后的位数,如`.15lf`会保留15位小数。如果希望更少的位数,可以减少这个数字。 **如何...
在JavaScript中,格式化数字保留两位小数点是一个常见的需求,这通常用于显示货币、百分比或者其他需要精确到小数点后两位的数据。在本文中,我们将探讨几种不同的方法来实现这一功能。 首先,JavaScript提供了一个...
在JavaScript编程中,经常需要对数字进行格式化,特别是在金融和前端界面展示时,经常要取小数点后的位数。本文将介绍一种简单有效的方法,用于获取数字小数点后固定位数的值,无论是两位还是n位。 JavaScript中的...
在JavaScript中,有时我们需要对浮点数(float型)进行操作,特别是获取小数点后特定位数的数值。这通常涉及到精度处理和四舍五入的问题。以下是一些方法来实现这一目标,特别是获取小数点后两位的数字。 1. **基本...
3. **保留小数点后两位**:这是标准货币交易中常见的精度要求,确保交易金额精确到分。在项目中,可能会有一个函数或者规则来检查并自动调整用户输入,使其始终符合这个格式。 4. **小数点后任意位数**:除了基本的...
在总结以上方法后,我们可以看到,虽然JavaScript提供了多种保留小数位数的方法,但每种方法都有其适用场景和局限性。在实际开发中,需要根据具体的需求和环境来选择合适的保留小数位数的方法。对于需要在多种浏览器...
`replace`函数用于在匹配到的内容后直接截取到小数点后两位,从而保证小数点后不会有多余的数字。 5. **jQuery Validate插件**:该插件提供了一个非常方便的验证规则添加方法`jQuery.validator.addMethod`。例如,...
`toFixed(2)`是JavaScript中专门用于格式化数字,保留指定位数的小数的方法。它返回一个字符串,而不是原始的数字类型。 ```javascript function getnum() { var num = 22.123456; alert(num.toFixed(2)); } ...
在给定的部分内容中,提供了一个简单的函数`tofloat`,用于将传入的浮点数`src`保留到指定位数`pos`。该函数的核心逻辑在于利用数学方法对数值进行四舍五入处理,然后除以相应的幂次来达到保留位数的效果。 ```...
现代JavaScript引擎提供了 `toFixed()` 和 `toPrecision()` 方法,它们分别用于固定小数点后的位数和指定有效数字的位数进行格式化。例如, `toFixed(2)` 保证保留两位小数,而 `toPrecision(3)` 则保证保留三位...