Number对象常用的toFixed()方法

2016-02-20 00:49 62 1 收藏

今天给大家分享的是由图老师小编精心为您推荐的Number对象常用的toFixed()方法,喜欢的朋友可以分享一下,也算是给小编一份支持,大家都不容易啊!

【 tulaoshi.com - Web开发 】

与String对象类似,我们需要先创建一个Number对象,然后才能使用Number对象的各种方法和属性。要创建一个Number对象,可以使用如下代码:

var firstNumber = new Number(123);

var secondNumber = new Number('123');

然而,也可以声明一个基本数据类型的数值,然后把它作为一个Number对象使用。JavaScript将自动实现从数值到Number对象的转换:

var myNumber = 123.765;

与String对象类似,只要JavaScript能推断出需要转换的对象类型,JavaScript就能在后台自动地实现从基本类型到对象类型的转换。例如对于如下代码:

var myNumber = "123.567";

JavaScript能正确地推断出这是一个字符串类型,而不是一个数值类型。因此,不能使用Number对象的任何方法。

下面将介绍Number对象的一个最常用的方法 toFixed()方法。

toFixed()方法

toFixed()方法是JavaScript 1.5和JScript 5.5中新加入的方法,因此,仅在Netscape 6+或IE 5.5+浏览器中支持。该方法用于截取指定小数点位数的数字。下面用一个计算营业税的例子来说明。假如某个商品的价格是9.99美元,而营业税是7.5%,因此加上营业税之后的价格将是10.73925美元。然而,对于货币交易来说这个值是有问题的 需要将税后价格截取到小数点之后的两位数即可。下面是一个例子:

var itemCost = 9.99;

var itemCostAfterTax = 9.99 * 1.075;

document.write("Item cost is $" + itemCostAfterTax + "br");

itemCostAfterTax = itemCostAfterTax.toFixed(2);

document.write("Item cost fixed to 2 decimal places is " + itemCostAfterTax);

第一个document.write()语句将在页面上输出如下信息:

Item cost is 10.73925

但是,这并不是我们需要的格式,我们只需要输出到小数点之后的两位数,所以在下面这行代码中使用了toFixed()方法截取小数点之后的两位数字:

itemCostAfterTax = itemCostAfterTax.toFixed(2);

这里使用了Number对象的toFixed()方法,将变量itemCostAfterTax中的值截取至小数点后的两位。toFixed()方法只有一个参数,就是我们希望截取的小数点的位数。截取到小数点之后的两位数,则第二个document.write()语句将在页面上输出如下信息:

Item cost fixed to 2 decimal places is 10.74

也许你会感到奇怪,为什么截取的结果是10.74而不是10.73呢?toFixed()方法不仅仅截去多余的小数位,同时它还根据截取位置的下一个小数位进行四舍五入。例如,对于数值10.739,截取到小数点后的两位数,结果将是10.74。而对于数值10.732,截取到小数点后的两位数,结果将是10.73。

注意,在JavaScript中我们只能截取小数点之后0位~20位的小数。

toFixed()方法仅被高版本的浏览器所支持,所以在使用之前最好先检查一下浏览器是否支持该方法,检查的代码如下所示:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

var varNumber = 22.234;

if (varNumber.toFixed)

{

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

// Browser supports toFixed() method

varNumber = varNumber.toFixed(2)

}

else

{

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

// Browser doesn’t support toFixed() method so use some other code

var div = Math.pow(10,2);

varNumber = Math.round(varNumber * div) / div;

}

来源:https://www.tulaoshi.com/n/20160220/1632578.html

延伸阅读
我是从学习Java编程开始接触OOP(面向对象编程),刚开始使用Java编写程序的时候感觉很别扭,因为我早以习惯用C来编写程序,很欣赏C的简洁性和高效性,喜欢C简练而表达能力丰富的风格,特别忍受不了Java运行起来慢吞吞的速度,相对冗长的代码,而且一个很简单的事情,要写好多类,一个类调用一个类,心里的抵触情绪很强。 我对Java的面...
语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) BR 例子: 代码如下: select * from ( select *, ROW_NUMBER() OVER(Order by a.CreateTime DESC ) AS RowNumber from table_name as a ) as b where RowNumber BETWEEN 1 and 5 将会返回table表 其中有一列名字为 RowNumber, 编号从1开始 示例: ...
标签: Web开发
JS中定义类的方式有很多种: 1、工厂方式   function Car(){    var ocar = new Object;    ocar.color = "blue";    ocar.doors = 4;    ocar.showColor = function(){     doc...
标签: Web开发
Objects are useful to organize information. 对于组织信息来讲对象是非常有用的  JavaScript Objects JS对象 Earlier in this tutorial we have seen that JavaScript has several built-in objects, like String, Date...
标签: Web开发
a id="link1" name="link1" href="http://bbs.51js.com/"51js/a ============= 同一页面内的引用方法: 1、使用id: link1.href 2、使用name: document.all.link1.href 3、使用sourseIndex: document.all(4).href //注意,前面还有HTML、HEAD、TITLE和BODY,所以是4 4、使用链接集合: document.ancho...

经验教程

772

收藏

99
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部