Перейти к содержимому

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

  • автор:

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

Мы хотим сделать этот проект с открытым исходным кодом доступным для людей во всем мире. Пожалуйста, помогите нам перевести это руководство на другие языки.

Светлая тема Тёмная тема
Поделиться

Проверка, целое ли число

важность: 3

Напишите функцию isInteger(num) , которая возвращает true , если num – целое число, иначе false .

alert( isInteger(1) ); // true alert( isInteger(1.5) ); // false alert( isInteger(-0.5) ); // false

Один из вариантов такой функции:

function isInteger(num) < return (num ^ 0) === num; >alert( isInteger(1) ); // true alert( isInteger(1.5) ); // false alert( isInteger(-0.5) ); // false

Обратите внимание: num^0 – в скобках! Это потому, что приоритет операции ^ очень низкий. Если не поставить скобку, то === сработает раньше. Получится num ^ (0 === num) , а это уже совсем другое дело.

  • © 2007—2024 Илья Кантор
  • о проекте
  • связаться с нами
  • пользовательское соглашение
  • политика конфиденциальности

isInteger()

Метод Number.isInteger() определяет, является ли значение целым числом.
Этот метод возвращает true , если значение имеет тип Number и является целым числом. В противном случае метод возвращает false .

Поддержка браузеров

Синтаксис

Значения параметров

Параметр Описание
value Обязательный. Значение, подлежащее проверке

Технические подробности

Возвращаемое значение: Логическое. Возвращает true, если значение является целым числом, иначе метод возвращает false
Версия JavaScript: ECMAScript 6

Number.isInteger()

Метод Number.isInteger() определяет, является ли переданное значение целым числом.

Интерактивный пример

Синтаксис

Number.isInteger(value)

Параметры

Значение, проверяемое на целочисленность.

Возвращаемое значение

Boolean сообщающий о том, является ли переданное значение целочисленным числом.

Описание

Если целевое значение является целым числом, возвращает true . Если значение NaN или Infinity , то возвращает false . Метод также возвращает true , если это вещественное число с точкой, которое может быть представлено в целочисленном виде.

Примеры

.isInteger(0); // true Number.isInteger(1); // true Number.isInteger(-100000); // true Number.isInteger(99999999999999999999999); // true Number.isInteger(0.1); // false Number.isInteger(Math.PI); // false Number.isInteger(NaN); // false Number.isInteger(Infinity); // false Number.isInteger(-Infinity); // false Number.isInteger("10"); // false Number.isInteger(true); // false Number.isInteger(false); // false Number.isInteger([1]); // false Number.isInteger(5.0); // true Number.isInteger(5.000000000000001); // false Number.isInteger(5.0000000000000001); // true 

Полифил

.isInteger = Number.isInteger || function (value)  return ( typeof value === "number" && isFinite(value) && Math.floor(value) === value ); >; 

Спецификации

Specification
ECMAScript Language Specification
# sec-number.isinteger

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также

  • Объект Number , которому принадлежит этот метод.

Found a content problem with this page?

  • Edit the page on GitHub.
  • Report the content issue.
  • View the source on GitHub.

This page was last modified on 7 авг. 2023 г. by MDN contributors.

Your blueprint for a better internet.

MDN

Support

  • Product help
  • Report an issue

Our communities

Developers

  • Web Technologies
  • Learn Web Development
  • MDN Plus
  • Hacks Blog
  • Website Privacy Notice
  • Cookies
  • Legal
  • Community Participation Guidelines

Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2024 by individual mozilla.org contributors. Content available under a Creative Commons license.

Проверка на целое число JS

Вступление: Писал проверку на то что вводит пользователь, реализовывал через input type = ‘text’, однако потом решил попробовать через prompt и результат один и тот же. Проблема: проверял через Number.isInteger(x); Если число x введено через input или prompt и далее превращается в целое число parseInt(x). То Number.isInteger(x) покажет false. Напротив, если число изначально объявить let x = 76, то Number.isInteger(x) — true.

n = prompt(); parseInt(n, 10); console.log(Number.isInteger(n)); //false n = 67; console.log(Number.isInteger(n)); //true 

Вопрос: Почему так происходит? Как от этого избавиться?

Отслеживать

Den Varenik

задан 27 янв 2020 в 11:30

Den Varenik Den Varenik

5 1 1 серебряный знак 7 7 бронзовых знаков

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *