Каков наилучший способ проверить, если вход пуст? - PullRequest
1 голос
/ 25 апреля 2011

Я видел такие вещи, как:

  • input.value == ''
  • input.value == null
  • input.value.length > 0

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

Заранее спасибо.

Ответы [ 5 ]

1 голос
/ 26 апреля 2011

Я предпочитаю быть явным и проверять значение, которое я на самом деле хочу.Поэтому, если я хочу проверить пустую строку, я предпочитаю делать input.value === "", поскольку значение всегда является строкой.

1 голос
/ 26 апреля 2011

Для определения пустого значения вы можете использовать: if(getElementById('input').value) или if($('.inputBox').val())

Используя это условное утверждение, оба из них будут иметь значение false:

<input type="text" id="inputBox" value="" />
<input type="text" id="inputBox" />

Мне нравится этот метод, потому что он прост.

1 голос
/ 25 апреля 2011

лично я всегда хотел бы проверить с

input.value.match(/\S/);

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

Из предложенных вами методов я бы использовалсвойство length, хотя для пустой строки оно должно быть

input.value.length == 0
1 голос
/ 25 апреля 2011

Мне нравится input.value.length > 0. Опция NULL почти никогда не должна срабатывать, если у объекта нет атрибута value.

0 голосов
/ 25 апреля 2011

Многое может зависеть от того, что вы принимаете в поле.Даже если это может быть строка, вы все равно можете проверить, что это может быть.

Например: если это адрес электронной почты, вы можете выполнить регулярное выражение, чтобы увидеть, соответствует ли оно форме электронной почты.

То же самое относится и к большинству полей.Таким образом, вы можете быть достаточно доверенным с данными, которые вы получаете.Мало того, что он не равен нулю.

Для проверки на ноль я обычно использую .length> 0 для объектов формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...