2015-10-25 5 views
0

У меня есть следующий код. Возвращаемое значение функции 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 } 
 
}

Прости меня, если его тривиальным вопросом. Спасибо заранее.

+2

Вы пропускаете 'return' на рекурсивный вызов. – Pointy

+0

спасибо. которые решили проблему. – Raghav

ответ

1

геЬигп отсутствует в блоке, если get_last_catergory_value (last_category)

function get_last_catergory_value(last_category) { 

if($('.' + last_category).find(':selected').val() == 'none') { 

    last_category_number = last_category.substring(11); 
    last_category_number = parseInt(last_category_number); 
    last_category_number--; 

    last_category = last_category.substring(0, 11); 
    last_category = last_category + last_category_number; 
    return get_last_catergory_value(last_category); 
} else { 
    var value = $('.' + last_category).find(':selected').val(); 

    alert(value); //Gives the correct value here 
    return value; 
} 
} 
+0

Спасибо. Я скучаю по этому. – Raghav

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