Функции определяющее текущее состояние объекта Number. Функции isFinite(), isInteger(), isNan(), isSafeInteger()
Содержание
- 1. Функции определяющие состояние объекта Number. Перечень
- 2. Функция isFinite(). Определение признака конечности числа
- 3. Функция isInteger(). Определение признака целого числа
- 4. Функция isNan(). Определить, является ли указанное значение не числовым
- 5. Функция isSafeInteger(). Определить, является ли значение безопасным целым числом
- Связанные темы
Поиск на других ресурсах:
1. Функции определяющие состояние объекта Number. Перечень
В языке Java все числа представлены типом Number. Иными словами, для каждого числа определяется объект Number. При написании программ возможны случаи, когда это число может иметь неприемлемое для использования состояние, например, бесконечность при делении на 0. В этом случае нужно выполнить необходимую проверку. Для обработки различных состояний числа, в языке JavaScript полезными есть 4 функции объекта Number:
- isFinite() – определяет, является ли число конечным;
- isInteger() – определяет, является ли число целым;
- isNan() – определяет, не является ли значение числом;
- isSafeInteger() – определяет, является ли целочисленное значение безопасным с точки зрения стандарта IEEE-754.
⇑
2. Функция isFinite(). Определение признака конечности числа
Функция isFinite() определяет, является ли входное число конечным. Вызвать функцию можно следующими способами
isFinite(value)
или
Number.isFinite(value)
здесь
- value – значение, проверяемое на конечность.
Функция возвращает значение логического типа. Если число конечно, то функция возвращает true. В противном случае (число не является конечным) функция возвращает false.
Приклад.
// Тип Number // Функция isFinite() var a = 10 var res = Number.isFinite(a) // res = true res = isFinite(a / 0) // res = false var b = a / 0 res = isFinite(b) // res = false
⇑
3. Функция isInteger(). Определение признака целого числа
Функция isInteger() позволяет определить, является ли указанное число целым. Общий вызов функции может быть следующим:
Number.isInteger(value)
здесь
- value – проверяемое значение.
Функция возвращает true, если число является целым. Если в числе присутствует дробная часть, функция возвращает false.
Пример.
// Функция isInteger() - определить, есть ли число целым // 1. Получить результат для числа var a = 10 var res = Number.isInteger(a) // res = true // 2. Получить результат для выражения res = Number.isInteger(2+3.5) // res = false res = Number.isInteger(20/4) // res = true alert(res) // 3. Использование функции в условном операторе var x = 3 / 8 if (Number.isInteger(x)) // false alert("isInteger(3/8) => true"); else alert("isInteger(3/8) => false");
⇑
4. Функция isNan(). Определить, является ли указанное значение не числовым
С помощью функции isNan() можно определить, не является ли значение числовым. Иными словами, функция определяет, можно ли из некоторого значения образовать число. В наиболее общем случае вызов функции имеет вид
Number.isNan(value)
или
isNan(value)
здесь
- value – значение, проверяемое на признак числа.
Функция возвращает true, если из value нельзя образовать число. В противном случае функция возвращает false.
Пример.
// Функция isNan() - определить, есть ли значение нечисловым var res = Number.isNaN("10") // res = false var a = 10 res = Number.isNaN(a) // res = false res = Number.isNaN("abcd") // res = false alert(res) res = Number.isNaN(a/0) // res = false res = Number.isNaN(0/0) // res = true res = isNaN("5"/"6") // res = false res = isNaN("abcd"/0) // res = true res = isNaN(NaN) // res = true alert(res) // Использование функции в условном операторе var x = 0 / 0 if (Number.isNaN(x)) // true alert("isNaN(0/0) => true"); else alert("isNaN(0/0) => false");
⇑
5. Функция isSafeInteger(). Определить, является ли значение безопасным целым числом
Функция isSafeInteger() определяет, является ли заданное целое число безопасным. Целое число считается безопасным, если оно:
- может быть представлено как число двойной точности согласно стандарту IEEE-754;
- в представлении стандарта IEEE-754 не может являться результатом округления любого другого целого числа с целью соответствия этому стандарту.
Стандарт IEE-754 описывает формат представления чисел с плавающей запятой.
Для определения границ безопасности целого числа используются константы.
Number.MIN_SAFE_INTEGER Number.MAX_SAFE_INTEGER
определяющие соответственно верхнюю и нижнюю границы целого числа.
Константы MIN_SAFE_INTEGER и MAX_SAFE_INTEGER имеют следующие значения
MIN_SAFE_INTEGER = -(253 - 1) MAX_SAFE_INTEGER = 253 - 1
Вызов функции может производиться с использованием имени объекта Number:
Number.isSafeInteger(value)
здесь
- value – значение (или выражение), проверяемое на безопасность.
Пример.
// Функция isSafeInteger() - определить, безопасно ли целое число var res = Number.isSafeInteger(150) // res = true res = Number.isSafeInteger(Number.MAX_SAFE_INTEGER+1) // res = false res = Number.isSafeInteger(Number.MIN_SAFE_INTEGER-1) // res = false res = Number.isSafeInteger(Math.pow(2, 53)) // res = false res = Number.isSafeInteger(Math.pow(2, 53) - 1) // res = true res = Number.isSafeInteger(-Math.pow(2, 53)) // res = false res = Number.isSafeInteger(-Math.pow(2, 53) + 1) // res = true
⇑
Связанные темы
- Числовой тип данных Number. Функции преобразования между числовым типом и другими типами. Функции Number(), parseInt(), parseFloat()
- Функции представления объекта Number в разных нотациях. Функции toExponential(), toFixed(), toLocaleString(), toPrecision(), toString(), valueOf()
- Свойства объекта Number
⇑