嘿,我有以下示例数组:
var arr = ['hello', 'something', 'trying', 'new', 'old'];
以下是我的过滤器代码函数:
function doSomething(sentOver) {
console.log(sentOver);
myNewArray = jQuery.grep(arr, function(n) {
$('#output').text(n === sentOver);
});
}
当我使用 doSomething(&#39;尝试&#39;)运行上述内容时,当答案应为 true <时,它会返回 false / em>的
我在这里错过了什么让它作为 false 回来?
可以找到JSFIDDLE HERE。
答案 0 :(得分:2)
该行
$('#output').text(n === sentOver);
对输入数组中的每个项执行。对于&#34;微秒&#34;,#output
的内容将为真,但会被最后一项old
覆盖,而该项不会满足条件。
以下代码将为您的输入集显示true
。
var arr = ['hello', 'something', 'trying', 'new', 'old'];
function doSomething(sentOver) {
console.log(sentOver);
myNewArray = jQuery.grep(arr, function(n) {
return n === sentOver;
});
$("#output").text(myNewArray.length > 0);
}
doSomething('trying');