2013-03-21 3 views
0

В моем приложении я работаю с editable grid. У меня есть столбцы, которые варьируются от строкового типа данных до числа, я столкнулся с некоторой проблемой. Проверяя пустоту ячеек сетки. Как легко звучит, он становится запутанным и расстраивающим.Проверьте, нет ли поля типа string/number

Это то, что я использую, чтобы проверить, если поле пусто:

if (value == "") { 
//do work here 
} 

Это прекрасно работает для колонн с string типом данных, но когда значение типа данных number есть, он не может проверить его как В данный момент значение содержит NaN. Я пробовал большинство методов, упомянутых в this answer, но напрасно. Во-вторых, я также хочу, чтобы избежать ненужных вложенными или сослагательного наклонения в этом случае ..

+1

use three equals === – btevfik

+2

Вы можете проверить 'if (value) {'. –

+0

для использования числа 'parseInt', а затем использовать метод' isNaN' – btevfik

ответ

3

Вы могли бы сделать чек на falsy value с помощью только проверки

if (!value) { 
    //do work here 
} 

Что бы оценить, true для 0, "" , null, undefined, false и NaN

или, конечно, если вы хотите проверить, если поле не эми ти вы можете просто проверить для truthy значения

if (value) { 
    //do work here 
} 

, оценивающего к true, если значение неfalsy(ни один из указанных выше)

+0

Да! Он работает сейчас, хотя 'if (value) {...}' работал для меня .. спасибо – faizanjehangir

+0

Добро пожаловать. О, поэтому вы хотите проверить значение «правды» (если поле не пустое), это одна и та же идея: 'if (value) {...}' будет оценивать значение true, если значение не является вышеупомянутый – C5H8NNaO4

+0

@faizanjehangir обновил ответ, чтобы отразить это – C5H8NNaO4

1

Вы можете проверить truthy значения

if(value) { 
} 

, который оценивается как true не из ('null', 'undefined', 'false', 'NaN' or 'empty' that is (""))

Смежные вопросы