J'ai un souci très étrange. J'ai créé une fonction récursive qui me récupère la prochain élément TR d'un tableau. Je me suis rabattu sur une solution alternative pour que cela fonctionne mais j'ai tout de même une question concernant Javascript.

Voici ma fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function nextTr(from, step)
	{
		if(from == null)
		{
			var err = new Error();
			err.name = 'First param of nextTr function is not defined';
			throw(err);
		}
 
		if(step == null)
		{
			step = 0;
		}
		if(from.nodeName == 'TR' && step > 0 && step < 10)
		{
			tr = from;
			return from;
		}
		else if(step == 10)
		{
			var err = new Error();
			err.name = 'Next tr element not found';
			err.message = 'Stoped after 10 iteration';
			throw(err);
		}
		else
		{
			nextTr(from.nextSibling, ++step);
		}
	}
Ma question est toute simple: pourquoi est-ce que la variable tr est correctement initialisée alors que la valeur retournée par la fonction est undefined?