Исключение нулевых данных в массиве
Всем привет, встала одна проблема с JS, имеется массив с данными, которые разбираются в цикле, нужно их перемножить между собой, но попадаются ключи равные нулю и тогда умножение не работает. Как можно в цикле указать чтобы пропускались такие значения?
небольшая иллюстрация моего кода, чтобы было понятней о чем речь: var curr_string = $('.select option:selected'); var price = 0; $.each(curr_string, function() { price += parseFloat($(this).attr('price')) } в данный момент такой скрипт работает и суммирует значения, но нужно изменить на умножение, но возникает вышеописанная проблема и в результате получаю ноль. Как можно в таком цикле пропускать исключить нулевые значения? Или может вообще по другому стоит сделать? |
|
условие if я пробовал, но тоже результата нет. Может чего-то не так пишу?
$.each(curr_string, function() { if ($(this).attr('price') != 0) { price *= parseFloat($(this).attr('price')); } }); в результате просто ничего не получаю |
Надеюсь при умножении начальное значение не 0? :D
|
price *= +$(this).attr('price') || 1; Цитата:
|
Цитата:
начальное значение было 1. Методом проб и ошибок выяснил, что просто нужно было писать вот так: var price_val = $(this).attr('price'); if (price_val > 0) { price *= parseFloat(price_val); } то есть заменить знак "не равно" на "больше". Не знаю почему "!=" не сработало, но это уже не так важно. В любом случае спасибо за участие:thanks: |
Часовой пояс GMT +3, время: 16:52. |