Как проверить является ли переменная числом js
Метод Number.isNaN() — это встроенный метод JavaScript, который используется для определения, является ли переданное значение NaN (Not a Number). В этой статье мы рассмотрим, как использовать метод Number.isNaN() в JavaScript.
Описание метода Number.isNaN()
Метод Number.isNaN() принимает один аргумент и возвращает логическое значение, указывающее, является ли переданное значение NaN. Если переданное значение не является NaN, метод вернет false. Если переданное значение является NaN, метод вернет true.
console.log(Number.isNaN(NaN)); // true console.log(Number.isNaN(42)); // false console.log(Number.isNaN("42")); // false console.log(Number.isNaN("hello")); // false
В первом примере мы передали значение NaN методу Number.isNaN() и получили результат true, что означает, что переданное значение является NaN.
Во втором примере мы передали число 42 методу Number.isNaN() и получили результат false, что означает, что переданное значение не является NaN.
В третьем примере мы передали строку «42» методу Number.isNaN() и получили результат false, что означает, что переданное значение не является NaN. Это произошло потому, что метод Number.isNaN() не преобразует строку в число перед проверкой, в отличие от глобальной функции isNaN().
В четвертом примере мы передали строку «hello» методу Number.isNaN() и получили результат false, что означает, что переданное значение не является NaN.
Как использовать метод Number.isNaN()
Использование метода Number.isNaN() довольно просто. Вы можете передать значение, которое хотите проверить на NaN, в качестве аргумента методу Number.isNaN(). Метод вернет true, если переданное значение является NaN, и false в противном случае.
let x = NaN; let y = "hello"; let z = 42; console.log(Number.isNaN(x)); // true console.log(Number.isNaN(y)); // false console.log(Number.isNaN(z)); // false
В этом примере мы использовали метод Number.isNaN() для проверки переменных x, y и z на NaN. Переменная x содержит значение NaN, поэтому метод вернул true. Переменная y содержит строку «hello», которая не является NaN, поэтому метод вернул false. Переменная z содержит число 42, которое также не является NaN, поэтому метод вернул false.
Заключение
Метод Number.isNaN() является полезным инструментом в JavaScript для проверки значений на NaN. Он обладает более точной логикой, чем глобальная функция isNaN(), и не преобразует значения в число перед проверкой. Если вы работаете с числами в JavaScript, метод Number.isNaN() может быть полезным для обработки ошибок и проверки ввода данных.
Number . is Finite ( )
Поможет убедиться, что переданное значение — конечное число.
Время чтения: меньше 5 мин
Открыть/закрыть навигацию по статье
Обновлено 3 августа 2022
Кратко
Скопировать ссылку «Кратко» Скопировано
Метод Number . is Finite ( ) позволяет проверить, является ли переданное в аргументе число конечным. Конечным числом можно считать любое число, кроме бесконечности и NaN . В JavaScript бесконечность можно выразить только с помощью глобального Infinity или полей Number . POSITIVE _ INFINITY и Number . NEGATIVE _ INFINITY .
В JavaScript есть так же глобальная функция is Finite ( ) , которая работает аналогичным образом, но преобразует переданный аргумент в число.
Пример
Скопировать ссылку «Пример» Скопировано
Number.isFinite(3.14)// trueNumber.isFinite(10e5)// trueNumber.isFinite(0)// true Number.isFinite(-Infinity)// falseNumber.isFinite([])// falseNumber.isFinite('Двадцать пять')// false // Использование глобальной функции isFiniteisFinite('Сорок')// falseisFinite(50)// trueisFinite('101')// trueisFinite('10e3')// trueNumber.isFinite(3.14) // true Number.isFinite(10e5) // true Number.isFinite(0) // true Number.isFinite(-Infinity) // false Number.isFinite([]) // false Number.isFinite('Двадцать пять') // false // Использование глобальной функции isFinite isFinite('Сорок') // false isFinite(50) // true isFinite('101') // true isFinite('10e3') // true
Как понять
Скопировать ссылку «Как понять» Скопировано
В математике конечным числом можно считать по сути любое число, потому что у числа есть конечное значение. Только у бесконечностей нет фиксированного и конечного значения. Метод Number . is Finite ( ) позволяет проверить это свойство у переданного числа.
Как пишется
Скопировать ссылку «Как пишется» Скопировано
Метод Number . is Finite ( ) принимает только один аргумент – число, которое нужно проверить. Для любого нечислового значения метод вернёт false .
Если нужно убедиться что значение действительно не является числом, можно использовать метод Number.isNaN().
Number.isFinite('123')// false потому что передана строкаNumber.isFinite(<>)// false потому что передан объектNumber.isFinite(Infinity)// false потому что передали бесконечностьNumber.isFinite(NaN) //// false потому что передали не число Number.isFinite(123)// true, передали обычное числоNumber.isFinite(-456)// true, отрицательные числа тоже конечныеNumber.isFinite('123') // false потому что передана строка Number.isFinite(>) // false потому что передан объект Number.isFinite(Infinity) // false потому что передали бесконечность Number.isFinite(NaN) // // false потому что передали не число Number.isFinite(123) // true, передали обычное число Number.isFinite(-456) // true, отрицательные числа тоже конечные
Бесконечность в JavaScript тоже считается числом, попробуйте ввести в консоли typeof Infinity . Выражение Number . isFinite ( Infinity ) возвращает false так как бесконечность не является конечным числом, а не потому что бесконечность — это не число.
Если возникает необходимость работать с бесконечностью, то в глобальном объекте Number имеются удобные ссылки на бесконечности с разными знаками.
Number.POSITIVE_INFINITY === Infinity// trueNumber.NEGATIVE_INFINITY === -Infinity// trueNumber.POSITIVE_INFINITY === Infinity // true Number.NEGATIVE_INFINITY === -Infinity // true
На практике
Скопировать ссылку «На практике» Скопировано
Егор Огарков советует
Скопировать ссылку «Егор Огарков советует» Скопировано
Number . is Finite можно использовать для того, чтобы проверить что значение в переменной является обычным конечным числом. Так как бесконечность тоже является числом, то проверка с помощью typeof вернёт «number» . Но чаще всего мы не хотим работать в программе с бесконечными числами, потому что с ними нельзя провести математические операции.
const inf = Infinity; console.log(typeof Infinity === "number") // true// Проверка поможет отсеять бесконечные числаconsole.log(Number.isFinite(inf)) // falseconst inf = Infinity; console.log(typeof Infinity === "number") // true // Проверка поможет отсеять бесконечные числа console.log(Number.isFinite(inf)) // false
как проверить является ли числом js
Проверить, является ли значение переменной числом, можно с помощью оператора typeof , который возвращает строку, указывающую тип операнда:
const num = 345; const notNum = '345'; console.log(typeof num); // => number console.log(typeof notNum); // => string
JavaScript Проверка, является ли переменная числовым примером
JavaScript называется динамически типизированным языком. Это означает, что в языке есть типы данных, но переменные могут содержать значения разных типов данных в разные моменты времени. Мы можем объявить переменную и назначить строку, а затем присвоить ей номер следующим образом:
let name = «Siddharth» ;
Поведение, отображаемое в приведенном выше фрагменте, делает JavaScript динамически типизированным языком. Lisp, Groovy – это некоторые другие динамически типизированные языки. Это подводит нас к сути этой статьи. Как проверить, содержит ли переменная в определенный момент времени числовое или числовое значение.
В этой статье мы узнаем о проверке типов в JavaScript. В частности, мы узнаем, как проверить, является ли переменная числом. Давайте начнем без дальнейших задержек.
2. Проверка JavaScript, является ли переменная числом
Мы можем выполнить эту проверку, используя оператор typeof в JavaScript. Оператор typeof возвращает строку, которая указывает тип предоставленного операнда. JavaScript имеет следующие типы данных:
Помимо вышесказанного есть значение NaN .
Итак, давайте создадим утилиту для проверки типа и возврата ее типа. Структура нашего приложения NodeJS будет выглядеть следующим образом:

Код для модуля typeChecker выглядит следующим образом: