Сообщение от rgl
			 
		
	 | 
	
		Очередная задача из горе-учебника на применение рекурсии там, где ее применять не следует? 
helpmepls, 
Вы, при рекурсивном вызове передаете два параметра, а используется только один, как оно может работать "правильно"? 
Также не понятно, вы хотите чтобы можно было передавать отрицательные числа? Если да, вы подумали как будет функция работать в этом случае? Бесконечная рекурсия не получится? А если нет, зачем проверка n >= 0 ? 
Вот вам в том же духе (т.е. с теми же недочетами): 
function num(n)
{
  return ( n >= 0 && n < 10 ) ? 1 : num(n/10)+1;
}
	 | 
	
Благодарю за ответ.
1. Правильно ли я понял, что чтобы включить возможно обработки отрицательных чисел, в условии должно быть n >= -10 && n < 10  ?
2. Подскажите, почему в Вашем коде если alert(num(10)); то понятно что num(10/10)+1; = 2, но например при alert(num(11)); если не использовать команд для округления числа, num(11/10)+1; = 2,1 (при -11 = 2,2).
У Вас же команд для округления не используется, но почему то получается все верно, 2.
Что я упустил?