Как проверить целое число в JavaScript — полезные способы проверки числовых значений

При работе с JavaScript часто возникает необходимость проверить, является ли заданное значение целым числом. Например, при валидации форм, обработке данных или выполнении математических операций с числами. Существует несколько полезных способов проверки на целое число в JavaScript, которые мы рассмотрим в данной статье.

Первый способ — использование функции Number.isInteger(). Данная функция принимает один аргумент и возвращает true, если значение является целым числом, и false — в противном случае. Например, следующий код проверит, является ли переменная number целым числом:


let number = 42;
if (Number.isInteger(number)) {
console.log('Значение является целым числом');
} else {
console.log('Значение не является целым числом');
}


let number = 42;
if (typeof number === 'number' && number % 1 === 0) {
console.log('Значение является целым числом');
} else {
console.log('Значение не является целым числом');
}

Третий способ — использование регулярного выражения. Регулярное выражение позволяет проверить, соответствует ли заданное значение определенному шаблону. Например, следующий код проверит, является ли значение строки str целым числом:


let str = '42';
let regex = /^\d+$/;
if (regex.test(str)) {
console.log('Значение является целым числом');
} else {
console.log('Значение не является целым числом');
}

Теперь у вас есть три полезных способа проверки на целое число в JavaScript. Выбирайте наиболее удобный способ в зависимости от ваших потребностей и предпочтений.

Как проверить целое число в JavaScript

МетодОписаниеПример
Оператор %Проверяет, является ли остаток от деления на 1 равным нулю.var num = 10;
if (num % 1 === 0) {
  console.log(num + " является целым числом.");
}
Метод Number.isInteger()Проверяет, является ли число целым.var num = 10;
if (Number.isInteger(num)) {
  console.log(num + " является целым числом.");
}
Регулярное выражениеПрименяет регулярное выражение для проверки, содержит ли число только цифры.var num = 10;
if (/^\d+$/.test(num)) {
  console.log(num + " является целым числом.");
}

Используя эти способы проверки, вы можете убедиться, что число является целым, и в зависимости от результата, выполнить нужные действия в вашем коде.

Целые числа в JavaScript

Существует несколько способов проверки, является ли число целым в JavaScript:

1. С помощью оператора «остаток от деления»

Один из простых способов проверить, является ли число целым, — это проверить, делится ли оно нацело на 1. Для этого можно использовать оператор «остаток от деления»(%). Если результат операции «остаток от деления» равен 0, значит, число является целым.

Пример:

let num = 15;
if (num % 1 === 0) {
console.log("Число является целым");
} else {
console.log("Число не является целым");
}

2. С помощью оператора «целочисленное деление»

Другой способ проверить, является ли число целым, — это использовать оператор «целочисленное деление» (Math.floor или Math.trunc). Этот оператор делит число нацело и отбрасывает десятичную часть. Если результат операции равен исходному числу, значит, число является целым.

Пример:

let num = 10.5;
if (num === Math.floor(num)) {
console.log("Число является целым");
} else {
console.log("Число не является целым");
}

Оба этих метода позволяют проверить, является ли число целым в JavaScript. Вы можете использовать тот метод, который предпочитаете или который лучше подходит для вашего конкретного случая.

Использование оператора typeof

Применение функции Number.isInteger

Функция Number.isInteger(value) возвращает true, если значение является целым числом, и false, если значение не является целым числом.

Преимущество использования функции Number.isInteger(value) заключается в том, что она правильно обрабатывает числа, которые имеют тип данных «number», но не являются целыми числами. Например, функция будет возвращать false для значений 1.1, «10» и NaN.

Для использования функции Number.isInteger(value) необходимо передать значение, которое нужно проверить на целостность.

Пример использования функции Number.isInteger(value):


let number = 42;
let result = Number.isInteger(number);
console.log(result); // true
number = 3.14;
result = Number.isInteger(number);
console.log(result); // false

Функция Number.isInteger(value) является надежным и удобным способом проверки, является ли значение целым числом в JavaScript.

Проверка с помощью регулярного выражения

Для проверки целого числа с помощью регулярного выражения можно использовать следующий шаблон: /^-?\d+$/. Здесь:

  • ^ — обозначает начало строки
  • -? — указывает на возможность наличия знака «-» (минус) перед числом. Знак минуса может быть, а может и отсутствовать.
  • \d+ — означает одну или более цифр
  • $ — обозначает конец строки

Чтобы проверить значение на соответствие регулярному выражению, можно использовать метод test() объекта RegExp, передавая проверяемое значение в качестве аргумента.

const regExp = /^-?\d+$/;
const value = "12345";
const isValid = regExp.test(value);
console.log(isValid); // true

В данном примере, regExp.test(value) вернет true, так как значение «12345» является целым числом.

Использование регулярного выражения для проверки целого числа позволяет более гибко контролировать формат значения и устанавливать дополнительные условия, если это необходимо.

Использование функции parseInt

Пример использования:

let num1 = "42";
let num2 = "3.14";
let num3 = "hello";

Функция parseInt преобразует строку в целочисленное значение, игнорируя любые символы, которые не могут быть интерпретированы как часть числа. Если строка не может быть преобразована в число, функция возвращает значение NaN (Not a Number).

Если вам нужно проверить, является ли значение целым числом, вы можете использовать следующую проверку:

function isInteger(value) {
return parseInt(value) === value;
}

В данном примере функция isInteger принимает значение и сравнивает его с результатом преобразования через parseInt. Если значение и его преобразованное значение равны, значит, значение является целым числом.

Однако следует учитывать, что используя функцию parseInt, строки с ведущими нулями будут интерпретироваться как восьмеричные числа:

Если вам нужно проверить только положительные целые числа, можно использовать функцию Number.isInteger:

function isPositiveInteger(value) {
return Number.isInteger(value) && value > 0;
}

Функция Number.isInteger сначала проверяет, является ли значение целым числом, а затем проверяет, больше ли оно нуля.

Таким образом, использование функции parseInt в JavaScript является одним из способов проверить, является ли значение целым числом.

Метод Number.parseInt

Основное применение метода Number.parseInt состоит в проверке и преобразовании пользовательского ввода в числовое значение. В результате, можно убедиться, что введенное значение является целым числом, и использовать его в дальнейших вычислениях.

Пример использования метода Number.parseInt:


let userInput = prompt("Введите целое число:");
let number = Number.parseInt(userInput);
if (!Number.isNaN(number)) {
console.log("Введенное значение: " + number);
} else {
console.log("Неверный ввод!");
}

Метод Number.parseInt принимает два аргумента: строку, которую нужно преобразовать, и базу системы счисления. Если база не указана, то по умолчанию используется 10. Например, чтобы преобразовать строку «1010» из двоичной системы счисления в десятичное число, можно использовать следующий код:


let binaryNumber = "1010";
let decimalNumber = Number.parseInt(binaryNumber, 2);
console.log("Десятичное число: " + decimalNumber);

В данном примере строка «1010» преобразуется в число 10, потому что указана база 2 (двоичная система счисления).

Оцените статью