blob: 88189e6bf78622f799043ebdf2855920796200e7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
---
title: Number.NEGATIVE_INFINITY
slug: Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY
translation_of: Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY
---
<div>
{{JSRef("Global_Objects", "Number")}}</div>
<h2 id="Summary">概述</h2>
<p><code><strong>Number.NEGATIVE_INFINITY</strong></code> 属性表示负无穷大。</p>
<p>不用创建一个 {{jsxref("Global_Objects/Number", "Number")}} 实例,使用 <code>Number.NEGATIVE_INFINITY</code> 来访问该静态属性。</p>
<p>{{js_property_attributes(0,0,0)}}</p>
<h2 id="Description">描述</h2>
<p><code>Number.NEGATIVE_INFINITY</code> 的值和全局对象的 {{jsxref("Global_Objects/Infinity", "Infinity")}} 属性的负值相同。</p>
<p>该值的行为同数学上的无穷大(infinity)有一点儿不同:</p>
<ul>
<li>任何正值,包括 <code>POSITIVE_INFINITY,</code>乘以 <code>NEGATIVE_INFINITY</code> 为 <code>NEGATIVE_INFINITY</code>。</li>
<li>任何负值,包括 <code>NEGATIVE_INFINITY</code>,乘以 <code>NEGATIVE_INFINITY</code> 为 <code>POSITIVE_INFINITY</code>。</li>
<li>0 乘以 <code>NEGATIVE_INFINITY</code> 为 <code>NaN</code>.</li>
<li>NaN 乘以 <code>NEGATIVE_INFINITY</code> 为<code> NaN</code>.</li>
<li><code>NEGATIVE_INFINITY</code> 除以任何负值(除了 <code>NEGATIVE_INFINITY)</code>为 <code>POSITIVE_INFINITY</code>。</li>
<li><code>NEGATIVE_INFINITY</code> 除以任何正值(除了 <code>POSITIVE_INFINITY</code>)为 <code>NEGATIVE_INFINITY</code>。</li>
<li><code>NEGATIVE_INFINITY</code> 除以 <code>NEGATIVE_INFINITY</code> 或 <code>POSITIVE_INFINITY</code> 是 <code>NaN</code>。</li>
<li>任何数除以 <code>NEGATIVE_INFINITY</code> 为 0。</li>
</ul>
<p>为了成功返回一个有限值,你可能会使用 <code>Number.NEGATIVE_INFINITY</code> 属性来判断是否显示一个条件错误 。然而 {{jsxref("Global_Objects/isFinite", "isFinite")}} 方法更适合这种情况。</p>
<h2 id="Example">示例</h2>
<p>下例中,赋值给变量 <code>smallNumber</code> 一个明显小于 JavaScript 中的最小值的值。当 <code>if</code> 语句执行时,<code>smallNumber</code> 值为 "<code>-Infinity</code>",因此在继续执行代码前,<code>smallNumber</code> 被设为一个更容易管理的值。</p>
<pre class="brush:js">var smallNumber = (-Number.MAX_VALUE) * 2
if (smallNumber == Number.NEGATIVE_INFINITY) {
smallNumber = returnFinite();
}
</pre>
<h2 id="规范">规范</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
<tr>
<td>ECMAScript 1st Edition. Implemented in JavaScript 1.1</td>
<td>Standard</td>
<td>Initial definition.</td>
</tr>
<tr>
<td>{{SpecName('ES5.1', '#sec-15.7.3.5', 'Number.NEGATIVE_INFINITY')}}</td>
<td>{{Spec2('ES5.1')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('ES6', '#sec-number.negative_infinity', 'Number.NEGATIVE_INFINITY')}}</td>
<td>{{Spec2('ES6')}}</td>
<td> </td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
{{Compat}}
<h2 id="See_also">相关链接</h2>
<ul>
<li>{{jsxref("Number.POSITIVE_INFINITY")}}</li>
<li>{{jsxref("Global_Objects/Infinity", "Infinity")}}</li>
<li>{{jsxref("Global_Objects/isFinite", "isFinite")}}</li>
</ul>
|