Dokumentacja języka JavaScript 1.5:Obiekty:Number:NEGATIVE INFINITY
z Mozilla Developer Center, polskiego centrum programistów Mozilli.
Spis treści |
[edytuj] Podsumowanie
Wartość reprezentująca ujemną nieskończoność.
| Własność obiektu: Number | |
| Zaimplementowana w: | JavaScript 1.1, NES 2.0 |
| Wersja ECMA: | ECMA-262 |
[edytuj] Opis
Wartość własności Number.NEGATIVE_INFINITY jest taka sama jak ujemna wartość własności Infinity obiektu globalnego.
Wartość ta zachowuje się nieco inaczej niż matematyczna nieskończoność:
- Dowolna dodatnia wartość, włączając POSITIVE_INFINITY, pomnożona przez NEGATIVE_INFINITY jest równa NEGATIVE_INFINITY.
- Dowolna ujemna wartość, włączając NEGATIVE_INFINITY, pomnożona przez NEGATIVE_INFINITY jest równa POSITIVE_INFINITY.
- Zero pomnożone przez NEGATIVE_INFINITY zwraca wartość NaN.
- NaN pomnożone przez NEGATIVE_INFINITY zwraca wartość NaN.
- Wartość NEGATIVE_INFINITY podzielona przez dowolną wartość ujemną za wyjątkiem NEGATIVE_INFINITY jest równa POSITIVE_INFINITY.
- Wartość NEGATIVE_INFINITY podzielona przez dowolną wartość dodatnią za wyjątkiem POSITIVE_INFINITY jest równa NEGATIVE_INFINITY.
- Wartość NEGATIVE_INFINITY podzielona przez NEGATIVE_INFINITY lub POSITIVE_INFINITY zwraca wartość NaN.
- Dowolna liczba podzielona przez NEGATIVE_INFINITY jest równa zero.
Niektóre metody JavaScript (takie jak konstruktor Number, parseFloat i parseInt) zwracają wartość NaN, jeśli wartość określona w parametrze jest znacznie mniejsza niż wartość Number.MIN_VALUE.
Własności Number.NEGATIVE_INFINITY można użyć do wskazania błędu warunku, który zwraca liczbę skończoną w przypadku powodzenia. Należy jednak zauważyć, że funkcja isFinite będzie w tym wypadku bardziej odpowiednia.
[edytuj] Przykład
W poniższym przykładzie do zmiennej smallNumber została przypisana wartość mniejsza niż wartość minimalna. Gdy zostaje wykonana instrukcja if, smallNumber posiada wartość "-Infinity", więc przed kontynuowaniem do zmiennej smallNumber jest przypisywana bardziej wykonywalna wartość.
var smallNumber = (-Number.MAX_VALUE) * 2
if (smallNumber == Number.NEGATIVE_INFINITY) {
smallNumber = returnFinite();
}