Javascript 简明教程
JavaScript - The Number Object
JavaScript Number 对象将数值数据表示为浮点数。它包含针对数字进行处理的不同属性(常量)和方法。总体而言,你无需担忧 Number 对象,因为浏览器会自动将数字字面量转换为 number 类的实例。
JavaScript 数字对象可以通过 Number 构造函数定义。其他类型的数据(如字符串等)可以使用 Number() 函数转换为数字。
JavaScript 数字始终存储为浮点值(十进制数)。JavaScript 不区分整数值和浮点值。JavaScript 使用 IEEE 754 标准定义的 64 位浮点格式来表示数字。
Syntax
创建 number 对象的语法如下 -
const val = new Number(number);
在 number 的位置,如果你提供任何非数字参数,则参数不能转换为数字,则它返回 NaN (不是数字)。
我们还可以通过向变量分配数字值,来创建数字基元 −
let num1 = 24;
let num2 = 35.65;
JavaScript 会自动地将数字基元转换为数字对象。因此,我们可以在数字基元上使用 Number 对象的所有属性和方法。
Number Properties
以下列出每个属性和它们的说明。
Sr.No. |
Property & Description |
1 |
EPSILON 它表示 1 和大于 1 的最小浮点数之间的差值。 |
2 |
MAX_SAFE_INTEGER 返回最大安全整数值。 |
3 |
MAX_VALUE JavaScript 中数字可能具有的最大可能值为 1.7976931348623157E+308。 |
4 |
MIN_SAFE_INTEGER 返回最小安全整数值。 |
5 |
MIN_VALUE JavaScript 中数字可能具有的最小可能值为 5E-324。 |
6 |
NaN 等于一个不是数字的值。 |
7 |
NEGATIVE_INFINITY 小于 MIN_VALUE 的值。 |
8 |
POSITIVE_INFINITY 大于 MAX_VALUE 的值 |
9 |
prototype Number 对象的静态属性。使用 prototype 属性可为当前文档中的 Number 对象指定新属性和方法。 |
10 |
constructor 返回创建此对象实例的函数。默认情况下,这是 Number 对象。 |
Number Methods
Number 对象仅包含作为每个对象定义一部分的默认方法(实例和静态方法)。
Instance Methods
Sr.No. |
Method & Description |
1 |
toExponential() 强制将数字显示为指数形式,即使该数字在标准形式范围内。 |
2 |
toFixed() 使用特定的小数位数格式化数字。 |
3 |
toLocaleString() 以不同于本地设置的格式返回当前数字的字符串值版本。 |
4 |
toPrecision() 定义显示数字时要显示的总数字(包括小数点左右的数字)。 |
5 |
toString() 返回数字值的字符串表示形式。 |
6 |
valueOf() Returns the number’s value. |
Static Methods
Sr.No. |
Method & Description |
1 |
isNaN() 它检查该值是否为一个有效数字。 |
2 |
isFinite() 它检查该数字是否有限。 |
3 |
isInteger() 当数字为整数值时返回布尔值。 |
4 |
isSafeInteger() 它确保该整数是安全整数。 |
5 |
parseFloat() 从字符串中解析 float 值。 |
6 |
parseInt() 从字符串中解析 integer 值。 |
Examples
我们举几个示例来演示 Number 的属性和方法。
Example: Creating Number Object
在下面的示例中,num 变量包含一个值为 20 的数字对象。在输出中,你可以看到 num 变量的类型是一个对象。
<html>
<body>
<p id = "output"> </p>
<script>
const num = new Number(20);
document.getElementById("output").innerHTML =
"num = " + num + "<br>" +
"typeof num : " + typeof num;
</script>
</body>
</html>
num = 20
typeof num : object
Example: Number Properties
在下面的示例中,我们显示了一些 Number 属性。你应该尝试打印更多属性。
<html>
<body>
<div id="output"></div>
<script>
document.getElementById("output").innerHTML =
"Max Value : " + Number.MAX_VALUE + "<br>"
+"Min Value : " + Number.MIN_VALUE + "<br>"
+"Positive Infinity : " + Number.POSITIVE_INFINITY + "<br>"
+"Negative Infinity : " + Number.NEGATIVE_INFINITY + "<br>"
+"NaN : " + Number.NaN + "<br>";
</script>
</body>
</html>
Max Value : 1.7976931348623157e+308
Min Value : 5e-324
Positive Infinity : Infinity
Negative Infinity : -Infinity
NaN : NaN
Example: Number Methods
在下面的示例中,我们使用了一些 Number 属性。你可以尝试编辑程序以使用更多方法。
<html>
<body>
<div id="output"></div>
<script>
const num = 877.5312
document.getElementById("output").innerHTML =
"num.toExponetial() is : " + num.toExponential()+ "<br>"
+"num.toFixed() is : " + num.toFixed() + "<br>"
+"num.toPrecision(2) is : " + num.toPrecision(2) + "<br>";
</script>
</body>
</html>
num.toExponetial() is : 8.775312e+2
num.toFixed() is : 878
num.toPrecision(2) is : 8.8e+2
JavaScript Number() Function
Number() 函数将变量转换为数字。你可以使用它来更改变量的数据类型。
let num = Number(val)
这里,val 是一个要转换为数字的变量或值。它不会创建数字对象,而是返回一个原值。
Example
在下面的示例中,我们给 Number() 函数传递了 integer 和 string 值。在输出中,代码打印出数字值。num2 变量的类型是 number,因为 Number() 函数返回原数字值。
<html>
<body>
<p id = "output"> </p>
<script>
let num = Number(10);
document.getElementById("output").innerHTML =
"num = " + num + "<br>" +
"typeof num = " + typeof num;
</script>
</body>
</html>
num = 10
typeof num = number
Example: Converting Numeric Strings to Numbers
我们可以使用 Number() 函数将数字字符串转换为数字。尝试以下示例:
<html>
<body>
<p id = "output"> </p>
<script>
let str = "102.34";
let num = Number(str);
document.getElementById("output").innerHTML =
"num = " + num + "<br>" +
"typeof num = " + typeof num;
</script>
</body>
</html>
num = 102.34
typeof num = number
使用不同的数字尝试上述示例,例如整数、浮点数、八进制数、十六进制数等。