JavaScript Number toFixed() 方法



JavaScript Number toFixed() 方法返回一个数字值的字符串表示形式,可以包含或不包含小数位。它包含一个可选参数,称为“digits”。但是,如果 digits 参数不在“[0,100]”范围内,则会抛出“RangeError”异常。此外,如果尝试在非数字对象上调用此方法,则会抛出“TypeError”异常。

注意:如果小数位数大于原始数字中的小数位数,则会在数字末尾添加额外的零。

语法

以下是 JavaScript Number toFixed() 方法的语法:

toFixed(digits)

参数

此方法接受一个名为“digits”的可选参数,如下所述:

  • digits(可选) - 小数点后显示的数字位数。

返回值

此方法返回具有(或没有)小数位的数值的字符串表示形式。

示例 1

以下示例演示了 JavaScript Number toFixed() 方法的使用。

<html>
<head>
<title>JavaScript toFixed() Method</title>
</head>
<body>
<script>
   const val = 123.44;
   document.write("Given value = ", val);
   document.write("<br>Result = ", val.toFixed());
</script>
</body>
</html>

输出

以上程序产生以下输出:

Given value = 123.44
Result = 123

示例 2

如果我们将可选参数“digits”设置为3,则此方法将以小数点后 3 位数字的形式表示一个数值。

<html>
<head>
<title>JavaScript toFixed() Method</title>
</head>
<body>
<script>
   const val = 4553.4321343;
   const digits = 3;
   document.write("Given value = ", val);
   document.write("<br>Digits = ", digits);
   document.write("<br>Result = ", val.toFixed(digits));
</script>
</body>
</html>

输出

执行上述程序后,它将返回一个小数点后具有指定位数的数字:

Given value = 4553.4321343
Digits = 3
Result = 4553.432

示例 3

如果可选参数“digits”的值超出 [0, 100] 范围,则 Number toFixed() 方法将抛出“RangeError”异常。

<html>
<head>
<title>JavaScript toFixed() Method</title>
</head>
<body>
<script>
   const val = 123.321123;
   const digits = -1;
   document.write("Given value = ", val);
   document.write("<br>Digits = ", digits);
   try {
      document.write("<br>Result = ", val.toFixed(digits));
   } catch (error) {
      document.write("<br>", error);
   }
</script>
</body>
</html>

输出

执行上述程序后,它将抛出一个“RangeError”异常:

Given value = 123.321123
Digits = -1
RangeError: toFixed() digits argument must be between 0 and 100

示例 4

如果在非数字对象上调用 Number toFixed() 方法,则会抛出“TypeError”异常。

<html>
<head>
<title>JavaScript toFixed() Method</title>
</head>
<body>
<script>
   const val = "abc";
   const digits = 5;
   document.write("Given value = ", val);
   document.write("<br>Digits = ", digits);
   try {
      document.write("<br>Result = ", val.toFixed(digits));
   } catch (error) {
      document.write("<br>", error);
   }
</script>
</body>
</html>

输出

上述程序将抛出一个“TypeError”异常,如下所示:

Given value = abc
Digits = 5
TypeError: val.toFixed is not a function
广告