Je n'arrive pas à comprendre pourquoi ma recherche récursive ne se comportera pas récursivement.Quel est le problème avec ma boucle récursive JavaScript Search?
Voyez-vous ce qui ne va pas? Est-ce que j'ai un haystack[i]
au mauvais endroit? Parce que je ne le vois pas. J'ai essayé de regarder des exemples sur ce site mais je n'arrive pas à trouver quelque chose d'aussi simple.
search = function(needle, haystack) {
len = haystack.length;
for (var i = 0; i < len; i++)
{
if (typeof haystack[i] == 'object') {
search(needle, haystack[i])
} else {
if (needle == haystack[i]) {
console.log('found');
return;
}
console.log('value: ' + haystack[i])
}
}
}
var test = [[1], [2], [3,4], [5,6]]
search(4, test)
Ou voir le violon @http://jsfiddle.net/aniyishay/TBMmK/ (Ouvrez la console)
@Doorknob oui ça va ... l'avez-vous testé –
@Doorknob checkout http://jsfiddle.net/arunpjohny/qxfXb/1/ –
Hm. C'est intéressant, pourquoi est-ce? (+1) Pourquoi est-ce important de changer la variable globale en variable locale? – Doorknob