Javascript函数返回值未定义

时间:2016-04-22 18:54:17

标签: javascript arrays function console

我正在使用一个函数来遍历一个对象数组并过滤掉符合某些条件的对象。

var thread = underscore.find(threads, function (th) {

            function result(threadArray){
                threadArray.forEach(function(threads){
                    if (threads.owner.id === ownerId && threads.name.toLowerCase() == threadName) {
                        console.log(threads)
                        return threads
                    }
                });
            };

            console.log(result(th));
            return th.owner.id === ownerId && th.name.toLowerCase() === threadName;
});

'第'是对象数组。单步执行它,我可以看到使用forEach函数迭代对象数组,并且我的if逻辑只成功过滤掉一个对象,因为我可以在我的控制台中看到它" console.log(threads )",但是当我尝试通过调用它来控制函数的返回值时," console.log(result(th))",它返回为未定义,我可以&# 39;弄清楚原因。

enter image description here

0 个答案:

没有答案