我似乎无法弄清楚为什么我的递归搜索不会递归地表现。
你看到有什么问题吗?我有一个haystack[i]
错误的地方吗?因为我没看到。我试过浏览这个网站上的例子,但我想不出这么简单的东西。
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)
或者看小提琴@http ://jsfiddle.net/aniyishay/TBMmK/(打开控制台)