У меня есть следующий код. Возвращаемое значение функции get_last_catergory_value
всегда равно undeifned
. Я искал stackoverflow, но не смог отладить проблему.Значение возвращаемой функции Javascript не определено
Когда я показываю возвращаемое значение непосредственно перед оператором return
, оно показывает правильное значение. Но когда он возвращается из функции, это undefined
. Не могли бы вы помочь мне решить эту проблему?
function fetch_product(brand) {
\t var brand = brand;
\t //get last category id
\t var last_category = 'subcategory10';
\t var last_category_value = get_last_catergory_value(last_category);
\t alert(last_category_value); //undefined
}
function get_last_catergory_value(last_category) {
\t if($('.' + last_category).find(':selected').val() == 'none') {
\t \t last_category_number = last_category.substring(11);
\t \t last_category_number = parseInt(last_category_number);
\t \t last_category_number--;
\t \t last_category = last_category.substring(0, 11);
\t \t last_category = last_category + last_category_number;
\t \t get_last_catergory_value(last_category); //recall the function with values 'subcategory9', 'subcategory8' and so on...
\t } else {
\t \t var value = $('.' + last_category).find(':selected').val();
\t \t alert(value); //Gives the correct value here
\t \t return value;
\t }
}
Прости меня, если его тривиальным вопросом. Спасибо заранее.
Вы пропускаете 'return' на рекурсивный вызов. – Pointy
спасибо. которые решили проблему. – Raghav