«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как обеспечить точную проверку целых чисел в JavaScript: какой метод лучше?

Как обеспечить точную проверку целых чисел в JavaScript: какой метод лучше?

Опубликовано 15 ноября 2024 г.
Просматривать:626

How to Ensure Accurate Integer Validation in JavaScript: Which Method is Best?

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

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

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

Надежная функция проверки целых чисел

Следующая функция объединяет несколько проверок для обеспечения надежности проверка целого числа:

function isInt(value) {
  return !isNaN(value) &&
         parseInt(Number(value)) == value &&
         !isNaN(parseInt(value, 10));
}

Эта функция может обрабатывать как числовые строки, так и примитивные числа, обеспечивая точную проверку.

Побитовые операторы для повышения производительности

Если производительность является приоритетом, вы можете использовать побитовые операторы для эффективной проверки целых чисел:

function isInt(value) {
  var x = parseFloat(value);
  return !isNaN(value) && (x | 0) === x;
}

Этот метод использует побитовый оператор ИЛИ (|) для приведения входных данных к целому числу. Если результат соответствует исходному значению, входные данные представляют собой целое число.

Дополнительные параметры проверки

Вот еще несколько подходов к проверке целых чисел:

  • Короткое замыкание с помощью parseFloat():
function isInt(value) {
  if (isNaN(value)) return false;
  var x = parseFloat(value);
  return (x | 0) === x;
}
  • NaN приведение:
function isInt(value) {
  return !isNaN(value) && parseInt(value, 10) == value;
}
  • Truthy 0 Проверка:
function isInt(value) {
  return !isNaN(value) && parseInt(value, 10) && (parseInt(value, 10) | 0) === parseInt(value, 10);
}

Выбор правильного метода проверки зависит от конкретных требований и показателей производительности вашего приложения.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3