Javascript JQuery将对象打印到console.log

Javascript JQuery将对象打印到console.log,javascript,jquery,arrays,Javascript,Jquery,Arrays,我编写了一个函数,该函数在数组上迭代,如果找到匹配项,则返回对象及其值 不知何故,当我调用带有参数的函数时,它总是在浏览器控制台上打印未定义的内容 不确定我缺少什么,但在函数中,当我使用console.log(v)时,我会得到值,但在调用函数时不会 HTML代码: <div class="accounts"> 1<input name="1" value="" /><br> 2<input name="2" value="" /><br>

我编写了一个函数,该函数在数组上迭代,如果找到匹配项,则返回对象及其值

不知何故,当我调用带有参数的函数时,它总是在浏览器控制台上打印未定义的内容

不确定我缺少什么,但在函数中,当我使用console.log(v)时,我会得到值,但在调用函数时不会

HTML代码:

<div class="accounts">
1<input name="1" value="" /><br>
2<input name="2" value="" /><br>
3<input name="3" value="" /><br>
4<input name="4" value="" /><br>
5<input name="5" value="" /><br>
6<input name="6" value="" /><br>
7<input name="7" value="" /><br>
8<input name="8" value="" /><br>
9<input name="9" value="" /><br>
10<input name="10" value="" /><br>
11<input name="11" value="" /><br>
</div>
这是我的JSFiddler

你忘了回来

您仅在筛选器的回调中使用return,但这仅适用于
.filter
本身

如果你想得到过滤后的数据,你必须返回过滤后的数据

像这样试试

function vendorAcctCheck (array, value) {
   return array.filter(function(v) {
        if (v.vendor_id == value) {
            // console.log(v);
            return v;
        };
    })
    // return false;
}

请注意,您在
array.filter
的回调中使用了return语句。您错过了
array.filter的
return
function vendorAcctCheck (array, value) {
   return array.filter(function(v) {
        if (v.vendor_id == value) {
            // console.log(v);
            return v;
        };
    })
    // return false;
}