Проверка переменной на пустоту
Всем привет.
Я получаю из опеределённого поля число, вот так:
var priceforcart = $("#summ_order").html();
При первом обращении к полю #summ_order - там ничего нет, пустая строка(т.е. получается просто <div id="summ_order"></div>), далее это поле наполняется - <div id="summ_order">VALUE</div>. Мне нужно использоваться эту переменную в условном операторе. Как проверить переменную priceforcart на то что там ничего нет? ) Делал вот так:
if (isNaN(priceforcart)){
...
}
но почему-то не получается. |
if ( priceforcart === "") {
// пустая епрс. =)))
}
|
так не?
priceforcart == "" |
если ты переменную инициализировал через var ,но не присвоил ей значение-она будет undefenit
alert(b);
alert(typeof(b));
var b;
var a;
b=a;
alert(b);
if(typeof(b)=="undefined") alert("пусто");
или я неправильно понял задачу |
dmitriymar, :-? undefined
|
devote,
попутал темы в первом сообщении |
Не получается. Наверно не до конца все объяснил.
var priceforcart = $("#summ_order").html();
priceforcart = parseInt(priceforcart);
priceforcart = priceforcart+price;
$("#summ_order").text(priceforcart);
Переменная price - всегда целое число. Так вот когда мы первый раз обращаемся к #summ_order(между дивами ничего нет) - при выполнении $("#summ_order").text(priceforcart); в соответствующем поле(div id="summ_order">) пишется NaN. |
Цитата:
при выполнении этой операции priceforcart = parseInt(priceforcart); ты получишь NaN поскольку нельзя привести пустую строку к числу. а NaN+число тоже будет NaN; если ты пременной присваиваешь строковое значение пусть даже и пустое-переменная приобретёт строковой тип. var b=""; alert(typeof(b)); alert(parseInt(b)); |
DorianLeroy,
Вариант ... priceforcart = parseInt(priceforcart)||0; |
var priceforcart = $("#summ_order").html();
priceforcart = ( parseInt( priceforcart ).toString() === "NaN" ) ? 0 : parseInt( priceforcart );
priceforcart = priceforcart+price;
$("#summ_order").text(priceforcart);
|
| Часовой пояс GMT +3, время: 10:55. |